Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.minishopsteam.minishops;
- import org.apache.http.Header;
- import com.loopj.android.http.AsyncHttpClient;
- import com.loopj.android.http.AsyncHttpResponseHandler;
- import com.loopj.android.http.BinaryHttpResponseHandler;
- import com.loopj.android.http.RequestParams;
- import android.util.Log;
- public class ServerCommunicator {
- private static ServerCommunicator instance = null;
- private static final String BASE_URL = "http://minishops.azurewebsites.net/api/";
- private AsyncHttpClient httpClient = new AsyncHttpClient();
- private static final String TAG = "ServerCommunicator";
- private boolean isClientAuthenticated;
- public static ServerCommunicator getServerCommunicator(){
- if(instance == null)
- instance = new ServerCommunicator();
- return instance;
- }
- private ServerCommunicator(){
- this.isClientAuthenticated = false;
- }
- private void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler){
- httpClient.get(getAbsoluteUrl(url), params, responseHandler);
- }
- private void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler){
- httpClient.post(getAbsoluteUrl(url), params, responseHandler);
- }
- private void put(String url, RequestParams params, AsyncHttpResponseHandler responseHandler){
- httpClient.put(getAbsoluteUrl(url), params, responseHandler);
- }
- private String getAbsoluteUrl(String relativeUrl) {
- return BASE_URL + relativeUrl;
- }
- private AsyncHttpResponseHandler getDataUpdatedHandler(final String message){
- return new AsyncHttpResponseHandler(){
- @Override
- public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
- Log.v(TAG, message);
- Log.v(TAG, "Status of the request : " + statusCode);
- }
- };
- }
- public boolean validateUser(String userId, String userPassword){
- if(isClientAuthenticated == false){
- this.get("user/" + userId + "/pasword/" + userPassword, null, new AsyncHttpResponseHandler(){
- @Override
- public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
- if(statusCode == 200)
- isClientAuthenticated = true;
- }
- });
- }
- return isClientAuthenticated;
- }
- public void getUser(String id, AsyncHttpResponseHandler responseHandler) {
- this.get("user/" + id , null, responseHandler);
- }
- public void addUser(RequestParams parameters, AsyncHttpResponseHandler responseHandler){
- this.post("user/" , parameters, responseHandler);
- }
- public void getImage(String imageId, BinaryHttpResponseHandler responseHandler) {
- this.get("pictures/" + imageId, null, responseHandler);
- }
- public void updateUser(String userId, RequestParams parameters){
- this.put("user/" + userId, parameters, getDataUpdatedHandler("User : " + userId + " was updated with the following parameters : " + parameters.toString()));
- }
- public void updateName(String userId, String newName) {
- this.put("user/" + userId + "/name/" + newName , null, getDataUpdatedHandler("Name updated for user : " + userId + ", new name is : " + newName));
- }
- public void updateEmail(String userId, String newEmail) {
- this.put("user/" + userId + "/email/" + newEmail, null, getDataUpdatedHandler("Email updated for user : " + userId + ", new email is : " + newEmail));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement