package com.linroid.sky31radio.ui.base;
import android.os.Bundle;
import com.linroid.sky31radio.App;
import com.linroid.sky31radio.module.Injector;
import dagger.ObjectGraph;
import timber.log.Timber;
/**
* Created by linroid on 1/14/15.
*/
public abstract class InjectableActivity extends BaseActivity implements Injector{
protected ObjectGraph objectGraph;
@Override
protected void onCreate(Bundle savedInstanceState) {
App app = (App) getApplication();
objectGraph = app.plus(this);
objectGraph.inject(this);
super.onCreate(savedInstanceState);
}
public void inject(Object target){
objectGraph.inject(target);
Timber.i("inject to %s", target.getClass().toString());
}
public ObjectGraph plus(Object[] modules){
return objectGraph.plus(modules);
}
@Override
public void onDestroy() {
super.onDestroy();
objectGraph = null;
}
}