Advertisement
Guest User

Untitled

a guest
Apr 24th, 2014
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.23 KB | None | 0 0
  1. package com.minishopsteam.minishops;
  2.  
  3. import org.apache.http.Header;
  4.  
  5. import com.loopj.android.http.AsyncHttpClient;
  6. import com.loopj.android.http.AsyncHttpResponseHandler;
  7. import com.loopj.android.http.BinaryHttpResponseHandler;
  8. import com.loopj.android.http.RequestParams;
  9.  
  10. import android.util.Log;
  11.  
  12. public class ServerCommunicator {
  13.     private static ServerCommunicator instance = null;
  14.     private static final String BASE_URL = "http://minishops.azurewebsites.net/api/";
  15.     private AsyncHttpClient httpClient = new AsyncHttpClient();
  16.     private static final String TAG = "ServerCommunicator";
  17.     private boolean isClientAuthenticated;
  18.    
  19.     public static ServerCommunicator getServerCommunicator(){
  20.         if(instance == null)
  21.             instance = new ServerCommunicator();
  22.         return instance;
  23.     }
  24.    
  25.     private ServerCommunicator(){
  26.         this.isClientAuthenticated = false;
  27.     }
  28.    
  29.     private void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler){
  30.         httpClient.get(getAbsoluteUrl(url), params, responseHandler);
  31.     }
  32.     private void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler){
  33.         httpClient.post(getAbsoluteUrl(url), params, responseHandler);
  34.     }
  35.     private void put(String url, RequestParams params, AsyncHttpResponseHandler responseHandler){
  36.         httpClient.put(getAbsoluteUrl(url), params, responseHandler);
  37.     }
  38.     private String getAbsoluteUrl(String relativeUrl) {
  39.         return BASE_URL + relativeUrl;
  40.     }
  41.    
  42.     private AsyncHttpResponseHandler getDataUpdatedHandler(final String message){
  43.         return new AsyncHttpResponseHandler(){
  44.             @Override
  45.             public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
  46.                 Log.v(TAG, message);
  47.                 Log.v(TAG, "Status of the request : " + statusCode);
  48.             }
  49.         };
  50.     }
  51.    
  52.     public boolean validateUser(String userId, String userPassword){
  53.         if(isClientAuthenticated == false){
  54.             this.get("user/" + userId + "/pasword/" + userPassword, null, new AsyncHttpResponseHandler(){
  55.                 @Override
  56.                 public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
  57.                     if(statusCode == 200)
  58.                         isClientAuthenticated = true;
  59.                 }
  60.             });
  61.         }
  62.         return isClientAuthenticated;
  63.     }
  64.     public void getUser(String id, AsyncHttpResponseHandler responseHandler) {
  65.         this.get("user/" + id , null, responseHandler);
  66.     }
  67.     public void addUser(RequestParams parameters, AsyncHttpResponseHandler responseHandler){
  68.         this.post("user/" , parameters, responseHandler);
  69.     }
  70.     public void getImage(String imageId, BinaryHttpResponseHandler responseHandler) {
  71.         this.get("pictures/" + imageId, null, responseHandler);
  72.     }
  73.     public void updateUser(String userId, RequestParams parameters){
  74.         this.put("user/" + userId, parameters, getDataUpdatedHandler("User : " + userId + " was updated with the following parameters : " + parameters.toString()));
  75.     }
  76.     public void updateName(String userId, String newName) {
  77.         this.put("user/" + userId + "/name/" + newName , null, getDataUpdatedHandler("Name updated for user : " + userId + ", new name is : " + newName));
  78.     }
  79.     public void updateEmail(String userId, String newEmail) {
  80.         this.put("user/" + userId + "/email/" + newEmail, null, getDataUpdatedHandler("Email updated for user : " + userId + ", new email is : " + newEmail));
  81.     }
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement