diff --git a/app/src/main/java/com/example/cosmosclient/entities/JoinGroupResponse.java b/app/src/main/java/com/example/cosmosclient/entities/JoinGroupResponse.java new file mode 100644 index 0000000..b98a746 --- /dev/null +++ b/app/src/main/java/com/example/cosmosclient/entities/JoinGroupResponse.java @@ -0,0 +1,11 @@ +package com.example.cosmosclient.entities; + +import java.util.List; + +public class JoinGroupResponse { + public String gId; + public String uId; + public String token; + public String uri; + +} diff --git a/app/src/main/java/com/example/cosmosclient/entities/ToJoinGroupRetrofitMethods.java b/app/src/main/java/com/example/cosmosclient/entities/ToJoinGroupRetrofitMethods.java new file mode 100644 index 0000000..da36980 --- /dev/null +++ b/app/src/main/java/com/example/cosmosclient/entities/ToJoinGroupRetrofitMethods.java @@ -0,0 +1,80 @@ +package com.example.cosmosclient.entities; + +import android.content.Intent; +import android.support.v7.app.AppCompatActivity; +import android.widget.Toast; + +import com.example.cosmosclient.app.Cosmos; +import com.example.cosmosclient.resources.JoinGroupRest; +import com.example.cosmosclient.resources.UsersRest; +import com.example.cosmosclient.views.GroupListActivity; +import com.example.cosmosclient.views.JoinGroupActionsActivity; +import com.example.cosmosclient.views.SignupActivity; + +import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; +import retrofit2.Retrofit; +import retrofit2.converter.jackson.JacksonConverterFactory; +import retrofit2.http.Field; +import retrofit2.http.FormUrlEncoded; +import retrofit2.http.POST; +import retrofit2.http.Path; +import retrofit2.http.Query; + +public class ToJoinGroupRetrofitMethods extends AppCompatActivity { + public ToJoinGroupRetrofitMethods() { + } + public String runRetrofit() { + //retrofitの処理 + final Retrofit retrofit = new Retrofit.Builder() + .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/cosmos/") + .addConverterFactory(JacksonConverterFactory.create()) + .build(); + //interfaceから実装を取得 + final JoinGroupRest joinGroupService = retrofit.create(JoinGroupRest.class); + + String gid="dnjewvhoirae"; + String uid="dnjewvhfgoirae"; + String token="dnjewvhoidgfrae"; + //API呼び出しのための値入力 + Call call = joinGroupService.JoinGroup(gid, uid, token); + + //サーバからデータ受け取り + call.enqueue(new Callback() { + //成功時 + @Override + public void onResponse(Call call, Response response) { + if (response.isSuccessful()) { + JoinGroupResponse result = response.body(); + + Cosmos app = (Cosmos) getApplication(); + Intent intent = new Intent(getApplication(), GroupListActivity.class); + + //test +// System.out.println(result.uId); +// System.out.println(result.name); +// System.out.println(result.uri); +// System.out.println(result.token); +// System.out.println(result.iconUri); +// System.out.println(result.pw); + + //ここで成功の処理を記述 + finish(); + + } else { + //onFailureでキャッチできないエラー用 + //ここでエラーの処理を記述 + } + } + + + //失敗時 + @Override + public void onFailure(Call call, Throwable t) { + String errertxt = "errer"; + return errertxt; + } + }); + } +} diff --git a/app/src/main/java/com/example/cosmosclient/resources/JoinGroupRest.java b/app/src/main/java/com/example/cosmosclient/resources/JoinGroupRest.java new file mode 100644 index 0000000..8860eed --- /dev/null +++ b/app/src/main/java/com/example/cosmosclient/resources/JoinGroupRest.java @@ -0,0 +1,15 @@ +package com.example.cosmosclient.resources; + +import com.example.cosmosclient.entities.JoinGroupResponse; +import com.example.cosmosclient.entities.SigninResponse; + +import retrofit2.Call; +import retrofit2.http.POST; +import retrofit2.http.Path; +import retrofit2.http.Query; + +public interface JoinGroupRest { + @POST("groups/{gId}/members") + Call JoinGroup(@Path("gId") String gId, @Query("uId ") String uId , @Query("token ") String token); + +} diff --git a/app/src/main/java/com/example/cosmosclient/views/JoinGroupActionsActivity.java b/app/src/main/java/com/example/cosmosclient/views/JoinGroupActionsActivity.java index 321bf48..ecde6ec 100644 --- a/app/src/main/java/com/example/cosmosclient/views/JoinGroupActionsActivity.java +++ b/app/src/main/java/com/example/cosmosclient/views/JoinGroupActionsActivity.java @@ -15,14 +15,12 @@ private static final String[] scenes = { "QRコードでグループに入る", "IDでグループに入る", - "メールでグループに入る" }; // ちょっと冗長的ですが分かり易くするために private static final int[] photos = { R.drawable.camera_image, R.drawable.search_image, - R.drawable.mail_image, }; @Override @@ -57,8 +55,6 @@ intent = new Intent(this.getApplicationContext(), QRcodeReadingActivity.class); }else if(selectedText.contains("ID")==true){ intent = new Intent(this.getApplicationContext(), JoinGroupByIDActivity.class); - }else{ - intent = new Intent(this.getApplicationContext(), QRcodeReadingActivity.class); } // Intent intent = new Intent(this.getApplicationContext(), DisplayQRActivity.class); diff --git a/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java b/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java index b861a8e..01e1154 100644 --- a/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java +++ b/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java @@ -8,6 +8,7 @@ import android.widget.TextView; import com.example.cosmosclient.R; +import com.example.cosmosclient.entities.ToJoinGroupRetrofitMethods; public class JoinGroupByIDActivity extends AppCompatActivity { private String GroupID=null; @@ -26,6 +27,8 @@ EditText inputGroupID = (EditText)findViewById(R.id.inputGroupID); GroupID = inputGroupID.getText().toString(); result.setText(GroupID); + ToJoinGroupRetrofitMethods retr= new ToJoinGroupRetrofitMethods(); + String res=retr.runRetrofit(); } }); }