Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.myfirstapp.service;
- import org.apache.http.client.HttpClient;
- import com.example.myfirstapp.io.PersonHandler;
- import com.example.myfirstapp.io.RemoteExecutor;
- import com.example.myfirstapp.utils.Utils;
- import android.app.IntentService;
- import android.content.ContentResolver;
- import android.content.Intent;
- import android.os.Bundle;
- import android.os.ResultReceiver;
- import android.util.Log;
- public class PersonService extends IntentService {
- private static final String TAG = "PersonsService";
- public static final String EXTRA_STATUS = "com.example.myfirstapp.extra.STATUS";
- public static final String EXTRA_REST_OPERATION = "com.example.myfirstapp.extra.REST_OPERATION";
- public static final String GENERAL_REST_OPERATION = "com.example.myfirstapp.general.REST_OPERATION";
- public static final int STATUS_RUNNING = 0x1;
- public static final int STATUS_ERROR = 0x2;
- public static final int STATUS_FINISHED = 0x3;
- private HttpClient mHttpClient;
- private ContentResolver mResolver;
- private RemoteExecutor mExecutor;
- @Override
- public void onCreate () {
- super.onCreate ();
- this.mHttpClient = Utils.getHttpClient ( this );
- this.mResolver = getContentResolver ();
- this.mExecutor = new RemoteExecutor ( this.mHttpClient, this.mResolver );
- }
- public PersonService () {
- super ( TAG );
- }
- @Override
- protected void onHandleIntent ( Intent intent ) {
- Log.d ( TAG, "onHandleIntent()" );
- final String restOperation = intent.getStringExtra ( EXTRA_REST_OPERATION );
- if ( GENERAL_REST_OPERATION.equals ( restOperation ) )
- getPersons ( intent );
- }
- private void getPersons ( Intent intent ) {
- final ResultReceiver receiver = intent.getParcelableExtra ( EXTRA_STATUS );
- if ( receiver != null )
- receiver.send ( STATUS_RUNNING, Bundle.EMPTY );
- try {
- mExecutor.executeGet ( Utils.buildProxyPersonsUri (), new PersonHandler () );
- } catch ( Exception e ) {
- if ( receiver != null ) {
- final Bundle bundle = new Bundle ();
- bundle.putString ( Intent.EXTRA_TEXT, e.toString () );
- receiver.send ( STATUS_ERROR, bundle );
- }
- }
- if ( receiver != null )
- receiver.send ( STATUS_FINISHED, Bundle.EMPTY );
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement