Network Android

//package com.filmatchs.utils;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpDelete;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.methods.HttpPut;
import org.apache.http.impl.client.DefaultHttpClient; //
//import org.json.JSONArray;
//import org.json.JSONException;
//import org.json.JSONObject;
import android.util.Log;
/**
 * 
 * @author dycode (khalifavi)
 * 
 */
public class HttpClientManager {
  public static final String TAG = "RestClient";
  public static final int METHOD_GET = 0;
  public static final int METHOD_POST = 1;
  public static final int METHOD_PUT = 2;
  public static final int METHOD_DELETE = 4;
  //private String postfix = "";
  private String result = null;
  public HttpClientManager(String url) throws IOException,
      ClientProtocolException {
    this.result = connectResponse(url);
  }
  public HttpClientManager(String url, int method) throws IOException,
      ClientProtocolException {
    this.result = connectResponse(url, method);
  }
  public HttpClientManager(String url, int method, String postfix)
      throws IOException, ClientProtocolException {
    this.result = connectResponse(url, method, postfix);
  }
  public String getResult() {
    return this.result;
  }
  private static String convertStreamToString(InputStream is) {
    BufferedReader reader = new BufferedReader(new InputStreamReader(is));
    StringBuilder sb = new StringBuilder();
    String line = null;
    try {
      while ((line = reader.readLine()) != null) {
        sb.append(line + "\n");
      }
    } catch (IOException e) {
      e.printStackTrace();
    } finally {
      try {
        is.close();
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
    return sb.toString();
  }
  /**
   * 
   * @param url
   *            URL untuk melakukan GET dengan mengembalikan JSON String
   * @return String pengembalian nilai dari HTTP Request
   */
  public static String connectResponse(String url) throws IOException,
      ClientProtocolException {
    return connectResponse(url, METHOD_GET, null);
  }
  /**
   * 
   * @param url
   *            untuk mengambil JSON
   * @param method
   *            untuk dilakukan (GET, POST, PUT, DELETE)
   * @return String pengembalian nilai dari HTTP Request
   */
  public static String connectResponse(String url, int method)
      throws IOException, ClientProtocolException {
    return connectResponse(url, method, null);
  }
  /**
   * 
   * @param url
   *            alamat URL
   * @param method
   *            untuk dilakukan (GET, POST, PUT, DELETE)
   * @param returnType
   *            tipe dari pengembalian (JSON, XML)
   * @return String pengembalian nilai dari HTTP Request
   */
  public static String connectResponse(String url, int method, String postfix)
      throws IOException, ClientProtocolException {
    HttpClient httpClient = new DefaultHttpClient();
    if (postfix == null) {
      postfix = "";
    }
    String retval = "";
    url += postfix;
    HttpResponse response = null;
    if (method == METHOD_POST) {
      // -------------------------------- if POST
      response = httpClient.execute(new HttpPost(url));
    } else if (method == METHOD_PUT) {
      // -------------------------------- if PUT
      response = httpClient.execute(new HttpPut(url));
    } else if (method == METHOD_DELETE) {
      // -------------------------------- if DELETE
      response = httpClient.execute(new HttpDelete(url));
    } else {
      // -------------------------------- default GET
      response = httpClient.execute(new HttpGet(url));
    }
    Log.i(TAG, response.getStatusLine().toString());
    HttpEntity entity = response.getEntity();
    if (entity != null) {
      InputStream instream = entity.getContent();
      String result = convertStreamToString(instream);
      retval = result;
      instream.close();
    }
    return retval;
  }
}