Android Open Source - retrowatch Http Async Task






From Project

Back to project page retrowatch.

License

The source code is released under:

Apache License

If you think the Android project retrowatch listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (C) 2014 The Retro Watch - Open source smart watch project
 *//from w w w . j  a va 2s .  co  m
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.hardcopy.retrowatch.connectivity;

import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;

import com.hardcopy.retrowatch.utils.Logs;

import android.os.AsyncTask;


public class HttpAsyncTask extends AsyncTask<Void, Integer, String> implements HttpInterface
{
  // Global variables
  public static final String tag = "HttpAsyncTask";
  
//  private Map<String, String> mMap;  // Disabled
  private int mType;
  private String mURL = null;
  private int mResultStatus = MSG_HTTP_RESULT_CODE_OK;
  private int mRequestType = REQUEST_TYPE_GET;
  
  // Context, system
  private HttpListener mListener;
  
  // Constructor
  public HttpAsyncTask(HttpListener listener, int type, String url, int requestType) {
    mListener = listener;
    mType = type;    // Not used in async task. will be used in callback
    mURL = url;
    mRequestType = requestType;
  }
  

  protected String doInBackground(Void... unused) 
  {
    Logs.d(tag, "###### HttpAsyncTask :: Starting HTTP request task ");
    String resultString = null;
    HttpRequester httpRequester = new HttpRequester();
    
    if(mListener==null || mURL==null) { 
      Logs.d(tag, "###### Error!!! : mListener==null or mURL==null ");
      return null; 
    } else {
      Logs.d(tag, "###### Request URL = "+mURL);
    }
    
    URL url = null;
    try {
      url = new URL(mURL);
    } 
    catch (MalformedURLException e1) { 
      e1.printStackTrace();
      mResultStatus = MSG_HTTP_RESULT_CODE_ERROR_REQUEST_EXCEPTION;
      Logs.d(tag, "###### Error!!! : MalformedURLException ");
      return "";
    }
    
    // Determine request type
    String reqType = null;
    if(mRequestType == REQUEST_TYPE_GET)
      reqType = REQUEST_TYPE_GET_STRING;
    else if(mRequestType == REQUEST_TYPE_POST)
      reqType = REQUEST_TYPE_POST_STRING;
    else
      reqType = REQUEST_TYPE_GET_STRING;
    
    // TODO: Manually set response encoding type.
    // Some page doesn't support UTF-8
    String encType = null;
    if(true) {
      encType = ENCODING_TYPE_UTF_8;
    } 
//    else if(  ) {
//      encType = ENCODING_TYPE_EUC_KR;
//    }
    
    // Request
    try {
      resultString = httpRequester.request(url, encType, reqType, null);
      // publishProgress(int);
    } catch (IOException e) { 
      e.printStackTrace();
      mResultStatus = MSG_HTTP_RESULT_CODE_ERROR_REQUEST_EXCEPTION;
      Logs.d(tag, "###### Error!!! : HttpRequester makes IOException ");
      return "";
    }

    // Check result string
    if(resultString == null || resultString.length() < 1) {
      mResultStatus = MSG_HTTP_RESULT_CODE_ERROR_UNKNOWN;
      Logs.d(tag, "###### Error!!! : resultString - invalid result ");
      return "";
    }
    
    mResultStatus = MSG_HTTP_RESULT_CODE_OK;
    return resultString;
  }

  protected void onProgressUpdate(Integer... progress) {
    // TODO: set progress percentage
    // This code runs on UI thread
  }

  protected void onPostExecute(String result) {
    // This code runs on UI thread
    if(mListener != null) {
      mListener.OnReceiveHttpResponse(mType, result, mResultStatus);
    }
  }

  
}




Java Source Code List

com.hardcopy.retrowatch.DeviceListActivity.java
com.hardcopy.retrowatch.FiltersAdapter.java
com.hardcopy.retrowatch.FiltersFragment.java
com.hardcopy.retrowatch.IAdapterListener.java
com.hardcopy.retrowatch.IDialogListener.java
com.hardcopy.retrowatch.IFragmentListener.java
com.hardcopy.retrowatch.IWebViewListener.java
com.hardcopy.retrowatch.MessageListAdapter.java
com.hardcopy.retrowatch.MessageListDialog.java
com.hardcopy.retrowatch.MessageListFragment.java
com.hardcopy.retrowatch.RetroWatchActivity.java
com.hardcopy.retrowatch.RetroWatchFragmentAdapter.java
com.hardcopy.retrowatch.RetroWebViewActivity.java
com.hardcopy.retrowatch.RetroWebView.java
com.hardcopy.retrowatch.RssAdapter.java
com.hardcopy.retrowatch.RssFragment.java
com.hardcopy.retrowatch.WatchControlFragment.java
com.hardcopy.retrowatch.connectivity.BluetoothManager.java
com.hardcopy.retrowatch.connectivity.ConnectionInfo.java
com.hardcopy.retrowatch.connectivity.HttpAsyncTask.java
com.hardcopy.retrowatch.connectivity.HttpFileAsyncTask.java
com.hardcopy.retrowatch.connectivity.HttpInterface.java
com.hardcopy.retrowatch.connectivity.HttpListener.java
com.hardcopy.retrowatch.connectivity.HttpRequester.java
com.hardcopy.retrowatch.connectivity.TransactionBuilder.java
com.hardcopy.retrowatch.connectivity.TransactionReceiver.java
com.hardcopy.retrowatch.contents.ContentManager.java
com.hardcopy.retrowatch.contents.FeedManager.java
com.hardcopy.retrowatch.contents.FeedParser.java
com.hardcopy.retrowatch.contents.GmailContract.java
com.hardcopy.retrowatch.contents.IContentManagerListener.java
com.hardcopy.retrowatch.contents.IFeedListener.java
com.hardcopy.retrowatch.contents.objects.CPObject.java
com.hardcopy.retrowatch.contents.objects.ContentObject.java
com.hardcopy.retrowatch.contents.objects.EmergencyObject.java
com.hardcopy.retrowatch.contents.objects.FeedObject.java
com.hardcopy.retrowatch.contents.objects.FilterObject.java
com.hardcopy.retrowatch.contents.objects.MessagingObject.java
com.hardcopy.retrowatch.contents.objects.NotificationObject.java
com.hardcopy.retrowatch.database.DBHelper.java
com.hardcopy.retrowatch.service.NotificationReceiverService.java
com.hardcopy.retrowatch.service.RetroWatchService.java
com.hardcopy.retrowatch.service.ServiceMonitoring.java
com.hardcopy.retrowatch.utils.Constants.java
com.hardcopy.retrowatch.utils.Logs.java
com.hardcopy.retrowatch.utils.RecycleUtils.java
com.hardcopy.retrowatch.utils.Settings.java
com.hardcopy.retrowatch.utils.Utils.java
com.hardcopy.retrowatchle.DeviceListActivity.java
com.hardcopy.retrowatchle.FiltersAdapter.java
com.hardcopy.retrowatchle.FiltersFragment.java
com.hardcopy.retrowatchle.IAdapterListener.java
com.hardcopy.retrowatchle.IDialogListener.java
com.hardcopy.retrowatchle.IFragmentListener.java
com.hardcopy.retrowatchle.IWebViewListener.java
com.hardcopy.retrowatchle.MessageListAdapter.java
com.hardcopy.retrowatchle.MessageListDialog.java
com.hardcopy.retrowatchle.MessageListFragment.java
com.hardcopy.retrowatchle.RetroWatchActivity.java
com.hardcopy.retrowatchle.RetroWatchFragmentAdapter.java
com.hardcopy.retrowatchle.RetroWebViewActivity.java
com.hardcopy.retrowatchle.RetroWebView.java
com.hardcopy.retrowatchle.RssAdapter.java
com.hardcopy.retrowatchle.RssFragment.java
com.hardcopy.retrowatchle.WatchControlFragment.java
com.hardcopy.retrowatchle.connectivity.BluetoothManager.java
com.hardcopy.retrowatchle.connectivity.ConnectionInfo.java
com.hardcopy.retrowatchle.connectivity.HttpAsyncTask.java
com.hardcopy.retrowatchle.connectivity.HttpFileAsyncTask.java
com.hardcopy.retrowatchle.connectivity.HttpInterface.java
com.hardcopy.retrowatchle.connectivity.HttpListener.java
com.hardcopy.retrowatchle.connectivity.HttpRequester.java
com.hardcopy.retrowatchle.connectivity.TransactionBuilder.java
com.hardcopy.retrowatchle.connectivity.TransactionReceiver.java
com.hardcopy.retrowatchle.contents.ContentManager.java
com.hardcopy.retrowatchle.contents.FeedManager.java
com.hardcopy.retrowatchle.contents.FeedParser.java
com.hardcopy.retrowatchle.contents.GmailContract.java
com.hardcopy.retrowatchle.contents.IContentManagerListener.java
com.hardcopy.retrowatchle.contents.IFeedListener.java
com.hardcopy.retrowatchle.contents.objects.CPObject.java
com.hardcopy.retrowatchle.contents.objects.ContentObject.java
com.hardcopy.retrowatchle.contents.objects.EmergencyObject.java
com.hardcopy.retrowatchle.contents.objects.FeedObject.java
com.hardcopy.retrowatchle.contents.objects.FilterObject.java
com.hardcopy.retrowatchle.contents.objects.MessagingObject.java
com.hardcopy.retrowatchle.contents.objects.NotificationObject.java
com.hardcopy.retrowatchle.database.DBHelper.java
com.hardcopy.retrowatchle.service.RetroWatchService.java
com.hardcopy.retrowatchle.service.ServiceMonitoring.java
com.hardcopy.retrowatchle.utils.Constants.java
com.hardcopy.retrowatchle.utils.Logs.java
com.hardcopy.retrowatchle.utils.RecycleUtils.java
com.hardcopy.retrowatchle.utils.Settings.java
com.hardcopy.retrowatchle.utils.Utils.java