diff --git a/app/src/main/java/com/example/tampopo_client/viewmodels/FriendViewModel.java b/app/src/main/java/com/example/tampopo_client/viewmodels/FriendViewModel.java index 5ebbfcb..a4e6274 100644 --- a/app/src/main/java/com/example/tampopo_client/viewmodels/FriendViewModel.java +++ b/app/src/main/java/com/example/tampopo_client/viewmodels/FriendViewModel.java @@ -3,6 +3,7 @@ import androidx.lifecycle.MutableLiveData; import androidx.lifecycle.ViewModel; +import com.example.tampopo_client.models.FriendPair; import com.example.tampopo_client.resources.FriendsResource; import com.example.tampopo_client.resources.UserResource; @@ -13,6 +14,7 @@ import retrofit2.Response; import retrofit2.Retrofit; import retrofit2.converter.jackson.JacksonConverterFactory; +import retrofit2.http.Field; public class FriendViewModel extends ViewModel { @@ -20,20 +22,25 @@ private final UserResource usersResource; private final FriendsResource friendsResource; private final MutableLiveData> friendIdsLiveData; + private final MutableLiveData friendPair; public FriendViewModel(){ this.retrofit = new Retrofit.Builder() - .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/tampopo-server/") + .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/tampopo/") .addConverterFactory(JacksonConverterFactory.create()) .build(); this.usersResource = retrofit.create(UserResource.class); this.friendsResource = retrofit.create(FriendsResource.class); this.friendIdsLiveData = new MutableLiveData<>(); + this.friendPair = new MutableLiveData<>(); } public MutableLiveData> getFriendIdsLiveData(){ return this.friendIdsLiveData; } + public MutableLiveData getFriendPair(){ + return this.friendPair; + } public void loadFriends(String userId, String token){ Call> call = usersResource.getFriends(userId, token); @@ -56,4 +63,25 @@ } }); } + + public void addFriend(String token, String user0Id, String user1Id){ + Call call = friendsResource.createFriend(token, user0Id, user1Id); + + call.enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + if(response.isSuccessful()){ + friendPair.setValue(response.body()); + System.out.println(response.code()); + }else{ + System.out.println(response.code()); + } + } + + @Override + public void onFailure(Call call, Throwable t) { + System.out.println("NetWorkError" + t); + } + }); + } } diff --git a/app/src/main/java/com/example/tampopo_client/viewmodels/UserViewModel.java b/app/src/main/java/com/example/tampopo_client/viewmodels/UserViewModel.java index 3054883..6fc54b2 100644 --- a/app/src/main/java/com/example/tampopo_client/viewmodels/UserViewModel.java +++ b/app/src/main/java/com/example/tampopo_client/viewmodels/UserViewModel.java @@ -67,6 +67,11 @@ @Override public void onResponse(Call c, Response res) { loading.setValue(false); if (res.isSuccessful()) { + User u = res.body(); + user.setValue(u); // ① ユーザ情報 + token.setValue(u.getToken()); + + // ついでにユーザ情報を取得したい場合 user.setValue(res.body()); } else { error.setValue("登録失敗: " + res.code()); @@ -86,8 +91,9 @@ @Override public void onResponse(Call c, Response res) { loading.setValue(false); if (res.isSuccessful()) { - setValue(res.body()); userResource.getUser(id); + token.setValue(res.body()); + } else { error.setValue("ログイン失敗: " + res.code()); }