diff --git a/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java b/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java index e4d1820..3e00dab 100644 --- a/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java +++ b/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java @@ -22,6 +22,11 @@ //フィールド private String rid; + private String nickname; + private String hints; + private Integer num; + private List map; + final private MutableLiveData> membersLiveData; final private MutableLiveData roomMutableLiveData; final private MutableLiveData settingsMutableLiveData; final private Retrofit retrofit; @@ -33,6 +38,7 @@ //------------------------------------------------------------------ //コンストラクタ public GameViewModel() { + this.membersLiveData = new MutableLiveData<>(); this.roomMutableLiveData = new MutableLiveData<>(); this.settingsMutableLiveData = new MutableLiveData<>(); this.retrofit = new Retrofit.Builder() @@ -49,6 +55,9 @@ //-------------------------------------------------------------- // getter + public LiveData> getMembersLiveData() { + return this.membersLiveData; + } public LiveData getRoomLiveData() { return this.roomMutableLiveData; } @@ -61,21 +70,69 @@ @Override public void update() { updateRoom(rid); - updateDno(rid); + updateSus(nickname, map); + updateStatus(map); + updateOpen(nickname, map); + updateHints(hints, num); } + //部屋の情報の更新(RoomJson) public void updateRoom(String rid) { final RoomsRest roomsRest = retrofit.create(RoomsRest.class); + Call> call = roomsRest.getRoomMember(rid); + call.enqueue(new Callback>() { + @Override + public void onResponse(Call> call, Response> response) { + if (response.isSuccessful()){ + + //membersLiveData.setValue(response.body()); + //membersPreData = response.body(); + + /* + if(response.body().equals(roomJsonPreData)){ + //値が一緒なら書き換えない + }else{ + //値が異なるときのみライブデータを上書き + membersLiveData.setValue(response.body()); + roomJsonPreData = response.body(); + } + */ + + } + } + @Override + public void onFailure(Call> call, Throwable t) { + } + }); + } + + //候補選択情報の更新 + public void updateSus(String nickname, List map) { + final RoomsRest roomsRest = retrofit.create(RoomsRest.class); + } + + //マスの開閉状況の更新 + public void updateStatus(List map) { + final RoomsRest roomsRest = retrofit.create(RoomsRest.class); } + //誰がどこを開けたかの情報の更新(ログ用?) + public void updateOpen(String nickname, List map) { + final RoomsRest roomsRest = retrofit.create(RoomsRest.class); - public void updateDno(String rid) { + } + + //ヒントの内容(文、数) + public void updateHints(String hints, Integer num) { final RoomsRest roomsRest = retrofit.create(RoomsRest.class); + } + + }