Sample scheme:
It based on Mosby examples. I want to share Project object between ProjectFragment and ProjectHistoryFragment with @PerProject scope.
ProjectModule:
@Module
public class ProjectModule {
private Project project;
public ProjectModule(Project project) {
this.project = project;
}
@Provides
@PerProject
public Project provideProject() {
return project;
}
}
ProjectModule and ProjectComponent will be created by ProjectFragment and shared to every Project-dependent fragment. Nice.
But there is a problem. What if I need to update the title of Project? In my case, Project is a final object without any setters. Project can be modified only in ProjectFragment, so I can update and reset module's value for future injections. But I think that it is bad practice. Can someone give better advice?
