diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java index 4b3e368..9f1ffe9 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/MainActivity.java @@ -5,7 +5,7 @@ import android.support.v7.app.AppCompatActivity; import org.ntlab.radishforandroidstudio.R; - +import org.ntlab.radishforandroidstudio.cactusClient.views.LoginFragment; public class MainActivity extends AppCompatActivity { diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/AddressedEntity.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/AddressedEntity.java index df3873d..110e258 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/AddressedEntity.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/AddressedEntity.java @@ -2,10 +2,9 @@ public abstract class AddressedEntity { - private Entity body; + Entity body; - protected AddressedEntity() { - // JSONDecode���̌Ăяo���p + AddressedEntity() { } public AddressedEntity(Entity body) { diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/URIAddressedEntity.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/URIAddressedEntity.java index 2e9872f..4e8966e 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/URIAddressedEntity.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/models/URIAddressedEntity.java @@ -6,7 +6,7 @@ public class URIAddressedEntity extends AddressedEntity{ private URI uri; - private URIAddressedEntity() { + public URIAddressedEntity() { // JSONDecode時の呼び出し用 } diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/LoginFragment.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/LoginFragment.java index f76b77d..30ec439 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/LoginFragment.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/LoginFragment.java @@ -14,9 +14,7 @@ import android.widget.Toast; import org.ntlab.radishforandroidstudio.R; -import org.ntlab.radishforandroidstudio.cactusClient.connections.URIAddressedEntityConnection; import org.ntlab.radishforandroidstudio.cactusClient.models.URIAddressedEntity; -import org.ntlab.radishforandroidstudio.framework.network.CallBack; public class LoginFragment extends Fragment { private URIAddressedEntity connection; @@ -57,12 +55,13 @@ @Override public void onClick(View view) { EditText userName = (EditText)getActivity().findViewById(R.id.inputUserName); - EditText passWord = (EditText)getActivity().findViewById(R.id.inputPassword); + EditText passWord = (EditText)getActivity().findViewById(R.id.checkPassword); CharSequence userNameText = userName.getText(); CharSequence passWordText = passWord.getText(); + Toast tp = Toast.makeText(getActivity(), passWordText, Toast.LENGTH_SHORT); tp.setGravity(Gravity.BOTTOM, 0, 0); tp.show(); @@ -71,25 +70,22 @@ - if (userName.getText().toString().isEmpty()) { - Toast.makeText(getActivity(), "入力しろハゲ", Toast.LENGTH_SHORT).show(); - } else { - - connection = new URIAddressedEntityConnection(); - - connection.setCallBack(new CallBack() { - @Override - public void onResponse(String response) { - //通信した時の処理を書くのだ - } - - }); - connection.addFormParam("userName", userName.getText().toString()); - connection.doPost(); - } - - - +// if (userName.getText().toString().isEmpty()) { +// Toast.makeText(getActivity(), "値が未記入です", Toast.LENGTH_SHORT).show(); +// } else { +// +// connection = new URIAddressedEntity(); +// +// connection.setCallBack(new CallBack() { +// @Override +// public void onResponse(String response) { +// //通信した時の処理を書くのだ +// } +// +// }); +// connection.addFormParam("userName", userName.getText().toString()); +// connection.doPost(); +// } diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/SignUpFragment.java b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/SignUpFragment.java index f63aaea..5de0f18 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/SignUpFragment.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/cactusClient/views/SignUpFragment.java @@ -1,17 +1,17 @@ package org.ntlab.radishforandroidstudio.cactusClient.views; - import android.os.Bundle; - import android.support.v4.app.Fragment; - import android.support.v4.app.FragmentManager; - import android.support.v4.app.FragmentTransaction; - import android.view.LayoutInflater; - import android.view.View; - import android.view.ViewGroup; - import android.widget.Button; - - import org.ntlab.radishforandroidstudio.R; - import org.ntlab.radishforandroidstudio.cactusClient.LoginFragment; +import android.os.Bundle; +import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentManager; +import android.support.v4.app.FragmentTransaction; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Button; +import android.widget.EditText; +import android.widget.Toast; +import org.ntlab.radishforandroidstudio.R; public class SignUpFragment extends Fragment { @@ -28,7 +28,7 @@ public void onStart() { super.onStart(); - Button button = (Button)getActivity().findViewById(R.id.LoginButton2); + Button button = (Button) getActivity().findViewById(R.id.LoginButton2); button.setOnClickListener(new View.OnClickListener() { @Override @@ -45,5 +45,35 @@ } }); + Button sihnupButton = (Button) getActivity().findViewById(R.id.signUp2); + sihnupButton.setOnClickListener(new View.OnClickListener(){ + @Override + public void onClick(View view) { + EditText inputPassword = (EditText)getActivity().findViewById(R.id.inputPassword2); + EditText checkPassWord = (EditText)getActivity().findViewById(R.id.checkPassword); + + String strInputPassword = changeToString(inputPassword); + String strCheckPassWord = changeToString(checkPassWord); + + if (strInputPassword.isEmpty()) { + Toast.makeText(getActivity(), "パスワードを入力してください", Toast.LENGTH_SHORT).show(); + } else if (strCheckPassWord.isEmpty()) { + Toast.makeText(getActivity(), "確認用パスワードを入力してください", Toast.LENGTH_SHORT).show(); + } else if (!strInputPassword.equals(strCheckPassWord )) { + Toast.makeText(getActivity(), "パスワードが一致しません", Toast.LENGTH_SHORT).show(); + }else{ + Toast.makeText(getActivity(), "ok", Toast.LENGTH_SHORT).show(); + } + } + }); } -} + + private static String changeToString(EditText text){ + + CharSequence CharSequenceText = text.getText(); + + String str = CharSequenceText.toString(); + + return str; + } +} \ No newline at end of file diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/framework/network/CallBack.java b/app/src/main/java/org/ntlab/radishforandroidstudio/framework/network/CallBack.java new file mode 100644 index 0000000..964294d --- /dev/null +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/framework/network/CallBack.java @@ -0,0 +1,5 @@ +package org.ntlab.radishforandroidstudio.framework.network; + +public interface CallBack { + public void onResponse(String response); +} diff --git a/app/src/main/java/org/ntlab/radishforandroidstudio/framework/network/HttpAsyncConnection.java b/app/src/main/java/org/ntlab/radishforandroidstudio/framework/network/HttpAsyncConnection.java index 2f1fb80..cd6bf85 100644 --- a/app/src/main/java/org/ntlab/radishforandroidstudio/framework/network/HttpAsyncConnection.java +++ b/app/src/main/java/org/ntlab/radishforandroidstudio/framework/network/HttpAsyncConnection.java @@ -1,101 +1,111 @@ package org.ntlab.radishforandroidstudio.framework.network; -import android.app.Activity; -import android.os.AsyncTask; -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.xml.sax.InputSource; +import android.os.AsyncTask; +import android.util.Log; import java.io.BufferedReader; -import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; -import java.io.OutputStreamWriter; -import java.io.StringReader; +import java.io.OutputStream; import java.net.HttpURLConnection; -import java.net.MalformedURLException; import java.net.URL; -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; - abstract public class HttpAsyncConnection extends AsyncTask { - private HttpURLConnection conn; - private StringBuffer message = new StringBuffer(); - protected Activity activity = null; + private HttpURLConnection conn = null; + private String baseUrl = null; + private String queryParams = ""; + private String pathParams = ""; + private String formParams = ""; + private CallBack callBack = null; + + + private String method; private static String clientSessionID = null; - public HttpAsyncConnection(String url) { - try { - conn = (HttpURLConnection) new URL(url).openConnection(); - } catch (MalformedURLException e) { - - e.printStackTrace(); - } catch (IOException e) { - - e.printStackTrace(); - } + baseUrl = url; } - public HttpAsyncConnection(String url, Activity activity) { - this(url); - this.activity = activity; - try { - conn = (HttpURLConnection) new URL(url).openConnection(); - } catch (MalformedURLException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } + public void doPost() { + setMethod("POST"); + execute(); + } + + public void doGet() { + setMethod("GET"); + execute(); + } + + public void doPut() { + setMethod("PUT"); + execute(); + } + + public void doDelete() { + setMethod("DELETE"); + execute(); + } + + public void setCallBack(CallBack callBack) { + this.callBack = callBack; + } + + private void setMethod(String method) { + this.method = method; } @Override protected String doInBackground(Void... urls) { - doPost(); - return doGet(); + doAnything(); + return doReceive(); } - // Parse XML - public void onPostExecute(String result) { - // CLLog.debug(""+result); - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + /* (non-Javadoc) + * @see android.os.AsyncTask#onPostExecute(java.lang.Object) + */ + public void onPostExecute(String response) { try { - DocumentBuilder builder = factory.newDocumentBuilder(); - InputSource is = new InputSource(); - is.setCharacterStream(new StringReader(result)); - Document dom = builder.parse(is); - Element root = dom.getDocumentElement(); - receive(root); - }catch(Exception e) { - e.printStackTrace(); + if (callBack != null) callBack.onResponse(response); + } catch (Exception e) { + // TODO: handle exception + Log.d("error", "�G���[�I"); } } - abstract protected void receive(Element root); // request - public void doPost() { + public void doAnything() { try { + if(conn == null) { + if(queryParams == null || queryParams.length() == 0){ + conn = (HttpURLConnection) new URL(baseUrl + pathParams).openConnection(); + } else { + conn = (HttpURLConnection) new URL(baseUrl + pathParams + "?" + queryParams).openConnection(); + } + } conn.setReadTimeout(10000 /* milliseconds */); conn.setConnectTimeout(15000 /* milliseconds */); - // POST or GET - conn.setRequestMethod("POST"); - //conn.setRequestMethod("GET"); + // POST or GET or PUT or DELETE + conn.setRequestMethod(method); - conn.setDoOutput(true); - if(clientSessionID != null) { - conn.setRequestProperty("Cookie", clientSessionID); + if (formParams.length() > 0) { + conn.setDoOutput(true); + if(clientSessionID != null) { + conn.setRequestProperty("Cookie", clientSessionID); + } + OutputStream out = conn.getOutputStream(); + out.write(formParams.getBytes("UTF-8")); + out.flush(); + out.close(); + formParams = ""; } - BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(conn.getOutputStream(), "UTF-8")); - writer.write(message.toString()); - message.delete(0,message.length()); - writer.flush(); - writer.close(); + pathParams = ""; + queryParams = ""; + conn.connect(); if(clientSessionID == null ) { clientSessionID = conn.getHeaderField("Set-Cookie"); @@ -108,7 +118,7 @@ } // response - public String doGet() { + public String doReceive() { BufferedReader reader; try { reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); @@ -117,9 +127,11 @@ while((line = reader.readLine()) != null) builder.append(line); reader.close(); + if (conn != null) conn.disconnect(); return builder.toString(); } catch (IOException e) { e.printStackTrace(); + if (conn != null) conn.disconnect(); return null; } @@ -132,20 +144,21 @@ * @param key * @param value */ - public void addParam(String key, String value) { - if(message.length() > 0) { - message.append("&"); + public void addQueryParam(String key, String value) { + if(queryParams.length() > 0) { + queryParams += ("&"); } - message.append(key+"="+value); + queryParams += (key + "=" + value); } - public Activity getActivity() { - return activity; + public void addFormParam(String key, String value) { + if(formParams.length() > 0) { + formParams += "&"; + } + formParams += (key + "=" + value); } - public void setActivity(Activity activity) { - this.activity = activity; - - + public void addPathParam(String param){ + pathParams += "/" + param; } } diff --git a/app/src/main/res/layout/login_fragment.xml b/app/src/main/res/layout/login_fragment.xml index 4d93d9a..b78eccb 100644 --- a/app/src/main/res/layout/login_fragment.xml +++ b/app/src/main/res/layout/login_fragment.xml @@ -37,7 +37,7 @@ android:text="Please enter UserID" /> diff --git a/app/src/main/res/layout/sign_up_fragment.xml b/app/src/main/res/layout/sign_up_fragment.xml index 3eb3002..1417077 100644 --- a/app/src/main/res/layout/sign_up_fragment.xml +++ b/app/src/main/res/layout/sign_up_fragment.xml @@ -9,12 +9,10 @@ tools:context=".cactusClient.views.SignUpFragment"> @@ -22,9 +20,9 @@ android:id="@+id/password" android:layout_width="150dp" android:layout_height="20dp" - android:layout_alignStart="@+id/inputPassword" - android:layout_below="@+id/inputPassword" - android:layout_marginTop="-107dp" + android:layout_alignParentBottom="true" + android:layout_alignStart="@+id/checkPassword" + android:layout_marginBottom="113dp" android:text="check Password" />