roboguice.service
Class RoboService

java.lang.Object
  extended by android.content.Context
      extended by android.content.ContextWrapper
          extended by android.app.Service
              extended by roboguice.service.RoboService
All Implemented Interfaces:
android.content.ComponentCallbacks, InjectorProvider

public abstract class RoboService
extends android.app.Service
implements InjectorProvider

A RoboService extends from Service to provide dynamic injection of collaborators, using Google Guice.

Your own services that usually extend from Service should now extend from RoboService.

If we didn't provide what you need, you have two options : either post an issue on the bug tracker, or implement it yourself. Have a look at the source code of this class ( RoboService), you won't have to write that much changes. And of course, you are welcome to contribute and send your implementations to the RoboGuice project.

You can have access to the Guice Injector at any time, by calling getInjector().
However, you will not have access to Context scoped beans until onCreate() is called.

Author:
Mike Burton, Christine Karman

Field Summary
protected  EventManager eventManager
           
protected  ContextScope scope
           
 
Fields inherited from class android.app.Service
START_CONTINUATION_MASK, START_FLAG_REDELIVERY, START_FLAG_RETRY, START_NOT_STICKY, START_REDELIVER_INTENT, START_STICKY, START_STICKY_COMPATIBILITY
 
Fields inherited from class android.content.Context
ACCESSIBILITY_SERVICE, ACCOUNT_SERVICE, ACTIVITY_SERVICE, ALARM_SERVICE, AUDIO_SERVICE, BIND_AUTO_CREATE, BIND_DEBUG_UNBIND, CLIPBOARD_SERVICE, CONNECTIVITY_SERVICE, CONTEXT_IGNORE_SECURITY, CONTEXT_INCLUDE_CODE, CONTEXT_RESTRICTED, INPUT_METHOD_SERVICE, KEYGUARD_SERVICE, LAYOUT_INFLATER_SERVICE, LOCATION_SERVICE, MODE_APPEND, MODE_PRIVATE, MODE_WORLD_READABLE, MODE_WORLD_WRITEABLE, NOTIFICATION_SERVICE, POWER_SERVICE, SEARCH_SERVICE, SENSOR_SERVICE, TELEPHONY_SERVICE, VIBRATOR_SERVICE, WALLPAPER_SERVICE, WIFI_SERVICE, WINDOW_SERVICE
 
Constructor Summary
RoboService()
           
 
Method Summary
 com.google.inject.Injector getInjector()
           
 void onConfigurationChanged(android.content.res.Configuration newConfig)
           
 void onCreate()
           
 void onDestroy()
           
 void onStart(android.content.Intent intent, int startId)
           
 
Methods inherited from class android.app.Service
dump, finalize, getApplication, onBind, onLowMemory, onRebind, onStartCommand, onUnbind, setForeground, startForeground, stopForeground, stopSelf, stopSelf, stopSelfResult
 
Methods inherited from class android.content.ContextWrapper
attachBaseContext, bindService, checkCallingOrSelfPermission, checkCallingOrSelfUriPermission, checkCallingPermission, checkCallingUriPermission, checkPermission, checkUriPermission, checkUriPermission, clearWallpaper, createPackageContext, databaseList, deleteDatabase, deleteFile, enforceCallingOrSelfPermission, enforceCallingOrSelfUriPermission, enforceCallingPermission, enforceCallingUriPermission, enforcePermission, enforceUriPermission, enforceUriPermission, fileList, getApplicationContext, getApplicationInfo, getAssets, getBaseContext, getCacheDir, getClassLoader, getContentResolver, getDatabasePath, getDir, getFilesDir, getFileStreamPath, getMainLooper, getPackageCodePath, getPackageManager, getPackageName, getPackageResourcePath, getResources, getSharedPreferences, getSystemService, getTheme, getWallpaper, getWallpaperDesiredMinimumHeight, getWallpaperDesiredMinimumWidth, grantUriPermission, isRestricted, openFileInput, openFileOutput, openOrCreateDatabase, peekWallpaper, registerReceiver, registerReceiver, removeStickyBroadcast, revokeUriPermission, sendBroadcast, sendBroadcast, sendOrderedBroadcast, sendOrderedBroadcast, sendStickyBroadcast, sendStickyOrderedBroadcast, setTheme, setWallpaper, setWallpaper, startActivity, startInstrumentation, startIntentSender, startService, stopService, unbindService, unregisterReceiver
 
Methods inherited from class android.content.Context
getString, getString, getText, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

eventManager

protected EventManager eventManager

scope

protected ContextScope scope
Constructor Detail

RoboService

public RoboService()
Method Detail

onCreate

public void onCreate()
Overrides:
onCreate in class android.app.Service

onStart

public void onStart(android.content.Intent intent,
                    int startId)
Overrides:
onStart in class android.app.Service

onDestroy

public void onDestroy()
Overrides:
onDestroy in class android.app.Service

onConfigurationChanged

public void onConfigurationChanged(android.content.res.Configuration newConfig)
Specified by:
onConfigurationChanged in interface android.content.ComponentCallbacks
Overrides:
onConfigurationChanged in class android.app.Service

getInjector

public com.google.inject.Injector getInjector()
Specified by:
getInjector in interface InjectorProvider
See Also:
RoboApplication.getInjector()


Copyright © 2011. All Rights Reserved.