package com.example.nemophila; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.TextView; import com.example.nemophila.entities.Account; import com.example.nemophila.entities.AccountJson; import com.example.nemophila.resources.AccountsRest; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; import retrofit2.Retrofit; import retrofit2.converter.jackson.JacksonConverterFactory; @JsonIgnoreProperties(ignoreUnknown=true) public class SignUpActivity extends AppCompatActivity{ private Retrofit retrofit; private AccountsRest AccountsRest; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sign_up); //通信の初期化 this.retrofit = new Retrofit.Builder() .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/nemophila/") .addConverterFactory(JacksonConverterFactory.create()) .build(); this.AccountsRest = retrofit.create(AccountsRest.class); findViewById(R.id.SignUpButton).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { EditText editname = (EditText) findViewById(R.id.editTextTextUserName); String name = editname.getText().toString(); EditText editpw = (EditText) findViewById(R.id.editTextTextNewPassword); String pw = editpw.getText().toString(); // 通信 Call<AccountJson> call = AccountsRest.createAccounts(name,pw); call.enqueue(new Callback<AccountJson>() { @Override public void onResponse(Call<AccountJson> call, Response<AccountJson> response) { if (response.isSuccessful()) { System.out.println("通信成功:changeBelongsAndMaster"); Intent intent = new Intent(SignUpActivity.this,MainActivity.class); startActivity(intent); } else { System.out.println("通信可能:changeBelongsAndMaster: " + response.code()); if (response.code() == 500){ ((TextView) findViewById(R.id.textView)).setText("The UserName you gave is already in use."); }else if (response.code() == 404){ ((TextView) findViewById(R.id.textView)).setText("SignUp failed. Please enter the correct credentials."); } } } @Override public void onFailure(Call<AccountJson> call, Throwable t) { System.out.println("通信失敗:changeBelongsAndMaster"); System.out.println(t); } }); } }); } }