package in.mvpstarter.sample.injection.component; import dagger.Component; import in.mvpstarter.sample.injection.ConfigPersistent; import in.mvpstarter.sample.injection.module.ActivityModule; import in.mvpstarter.sample.injection.module.FragmentModule; import in.mvpstarter.sample.ui.base.BaseActivity; import in.mvpstarter.sample.ui.base.BaseFragment; /** * A dagger component that will live during the lifecycle of an Activity or Fragment but it won't * be destroy during configuration changes. Check {@link BaseActivity} and {@link BaseFragment} to * see how this components survives configuration changes. * Use the {@link ConfigPersistent} scope to annotate dependencies that need to survive * configuration changes (for example Presenters). */ @ConfigPersistent @Component(dependencies = ApplicationComponent.class) public interface ConfigPersistentComponent { ActivityComponent activityComponent(ActivityModule activityModule); FragmentComponent fragmentComponent(FragmentModule fragmentModule); }