mirror of https://github.com/tasks/tasks
Inject more objects into root object graph
parent
44616d9954
commit
caceb7636d
@ -1,32 +1,16 @@
|
|||||||
package org.tasks.injection;
|
package org.tasks.injection;
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
|
|
||||||
import com.todoroo.astrid.provider.Astrid2TaskProvider;
|
import com.todoroo.astrid.provider.Astrid2TaskProvider;
|
||||||
import com.todoroo.astrid.provider.Astrid3ContentProvider;
|
import com.todoroo.astrid.provider.Astrid3ContentProvider;
|
||||||
import com.todoroo.astrid.provider.SqlContentProvider;
|
import com.todoroo.astrid.provider.SqlContentProvider;
|
||||||
|
|
||||||
import javax.inject.Singleton;
|
|
||||||
|
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
import dagger.Provides;
|
|
||||||
|
|
||||||
@Module(injects = {
|
@Module(addsTo = TasksModule.class,
|
||||||
|
injects = {
|
||||||
Astrid2TaskProvider.class,
|
Astrid2TaskProvider.class,
|
||||||
Astrid3ContentProvider.class,
|
Astrid3ContentProvider.class,
|
||||||
SqlContentProvider.class
|
SqlContentProvider.class
|
||||||
})
|
})
|
||||||
public class ContentProviderModule {
|
public class ContentProviderModule {
|
||||||
private final Context context;
|
|
||||||
|
|
||||||
public ContentProviderModule(Context context) {
|
|
||||||
this.context = context;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Singleton
|
|
||||||
@Provides
|
|
||||||
@ForApplication
|
|
||||||
public Context getContext() {
|
|
||||||
return context;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,16 @@
|
|||||||
|
package org.tasks.injection;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
|
||||||
|
import dagger.ObjectGraph;
|
||||||
|
|
||||||
|
public final class Dagger {
|
||||||
|
private static ObjectGraph objectGraph;
|
||||||
|
|
||||||
|
static ObjectGraph getObjectGraph(Context context) {
|
||||||
|
if (objectGraph == null) {
|
||||||
|
objectGraph = ObjectGraph.create(new TasksModule(context));
|
||||||
|
}
|
||||||
|
return objectGraph;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,9 +1,26 @@
|
|||||||
package org.tasks.injection;
|
package org.tasks.injection;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
|
||||||
import org.tasks.Tasks;
|
import org.tasks.Tasks;
|
||||||
|
|
||||||
|
import javax.inject.Singleton;
|
||||||
|
|
||||||
import dagger.Module;
|
import dagger.Module;
|
||||||
|
import dagger.Provides;
|
||||||
|
|
||||||
@Module(injects = { Tasks.class })
|
@Module(injects = { Tasks.class })
|
||||||
public class TasksModule {
|
public class TasksModule {
|
||||||
|
private Context context;
|
||||||
|
|
||||||
|
public TasksModule(Context context) {
|
||||||
|
this.context = context;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Singleton
|
||||||
|
@Provides
|
||||||
|
@ForApplication
|
||||||
|
public Context getApplicationContext() {
|
||||||
|
return context.getApplicationContext();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue