612 lines
22 KiB
Plaintext
612 lines
22 KiB
Plaintext
package com.couplesconnect.app;
|
|
|
|
import android.app.Activity;
|
|
import android.app.Service;
|
|
import android.view.View;
|
|
import androidx.fragment.app.Fragment;
|
|
import androidx.lifecycle.SavedStateHandle;
|
|
import androidx.lifecycle.ViewModel;
|
|
import com.couplesconnect.app.data.local.AppDatabase;
|
|
import com.couplesconnect.app.data.local.QuestionDao;
|
|
import com.couplesconnect.app.data.remote.FirestoreQuestionThreadDataSource;
|
|
import com.couplesconnect.app.data.repository.QuestionThreadRepositoryImpl;
|
|
import com.couplesconnect.app.di.DatabaseModule_ProvideAppDatabaseFactory;
|
|
import com.couplesconnect.app.di.DatabaseModule_ProvideQuestionDaoFactory;
|
|
import com.couplesconnect.app.ui.questions.QuestionThreadViewModel;
|
|
import com.couplesconnect.app.ui.questions.QuestionThreadViewModel_HiltModules;
|
|
import com.couplesconnect.app.ui.questions.QuestionThreadViewModel_HiltModules_BindsModule_Binds_LazyMapKey;
|
|
import com.couplesconnect.app.ui.questions.QuestionThreadViewModel_HiltModules_KeyModule_Provide_LazyMapKey;
|
|
import com.google.common.collect.ImmutableMap;
|
|
import com.google.common.collect.ImmutableSet;
|
|
import dagger.hilt.android.ActivityRetainedLifecycle;
|
|
import dagger.hilt.android.ViewModelLifecycle;
|
|
import dagger.hilt.android.internal.builders.ActivityComponentBuilder;
|
|
import dagger.hilt.android.internal.builders.ActivityRetainedComponentBuilder;
|
|
import dagger.hilt.android.internal.builders.FragmentComponentBuilder;
|
|
import dagger.hilt.android.internal.builders.ServiceComponentBuilder;
|
|
import dagger.hilt.android.internal.builders.ViewComponentBuilder;
|
|
import dagger.hilt.android.internal.builders.ViewModelComponentBuilder;
|
|
import dagger.hilt.android.internal.builders.ViewWithFragmentComponentBuilder;
|
|
import dagger.hilt.android.internal.lifecycle.DefaultViewModelFactories;
|
|
import dagger.hilt.android.internal.lifecycle.DefaultViewModelFactories_InternalFactoryFactory_Factory;
|
|
import dagger.hilt.android.internal.managers.ActivityRetainedComponentManager_LifecycleModule_ProvideActivityRetainedLifecycleFactory;
|
|
import dagger.hilt.android.internal.managers.SavedStateHandleHolder;
|
|
import dagger.hilt.android.internal.modules.ApplicationContextModule;
|
|
import dagger.hilt.android.internal.modules.ApplicationContextModule_ProvideContextFactory;
|
|
import dagger.internal.DaggerGenerated;
|
|
import dagger.internal.DoubleCheck;
|
|
import dagger.internal.LazyClassKeyMap;
|
|
import dagger.internal.Preconditions;
|
|
import dagger.internal.Provider;
|
|
import java.util.Map;
|
|
import java.util.Set;
|
|
import javax.annotation.processing.Generated;
|
|
|
|
@DaggerGenerated
|
|
@Generated(
|
|
value = "dagger.internal.codegen.ComponentProcessor",
|
|
comments = "https://dagger.dev"
|
|
)
|
|
@SuppressWarnings({
|
|
"unchecked",
|
|
"rawtypes",
|
|
"KotlinInternal",
|
|
"KotlinInternalInJava",
|
|
"cast",
|
|
"deprecation",
|
|
"nullness:initialization.field.uninitialized"
|
|
})
|
|
public final class DaggerCouplesConnectApp_HiltComponents_SingletonC {
|
|
private DaggerCouplesConnectApp_HiltComponents_SingletonC() {
|
|
}
|
|
|
|
public static Builder builder() {
|
|
return new Builder();
|
|
}
|
|
|
|
public static final class Builder {
|
|
private ApplicationContextModule applicationContextModule;
|
|
|
|
private Builder() {
|
|
}
|
|
|
|
public Builder applicationContextModule(ApplicationContextModule applicationContextModule) {
|
|
this.applicationContextModule = Preconditions.checkNotNull(applicationContextModule);
|
|
return this;
|
|
}
|
|
|
|
public CouplesConnectApp_HiltComponents.SingletonC build() {
|
|
Preconditions.checkBuilderRequirement(applicationContextModule, ApplicationContextModule.class);
|
|
return new SingletonCImpl(applicationContextModule);
|
|
}
|
|
}
|
|
|
|
private static final class ActivityRetainedCBuilder implements CouplesConnectApp_HiltComponents.ActivityRetainedC.Builder {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private SavedStateHandleHolder savedStateHandleHolder;
|
|
|
|
private ActivityRetainedCBuilder(SingletonCImpl singletonCImpl) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
}
|
|
|
|
@Override
|
|
public ActivityRetainedCBuilder savedStateHandleHolder(
|
|
SavedStateHandleHolder savedStateHandleHolder) {
|
|
this.savedStateHandleHolder = Preconditions.checkNotNull(savedStateHandleHolder);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public CouplesConnectApp_HiltComponents.ActivityRetainedC build() {
|
|
Preconditions.checkBuilderRequirement(savedStateHandleHolder, SavedStateHandleHolder.class);
|
|
return new ActivityRetainedCImpl(singletonCImpl, savedStateHandleHolder);
|
|
}
|
|
}
|
|
|
|
private static final class ActivityCBuilder implements CouplesConnectApp_HiltComponents.ActivityC.Builder {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private Activity activity;
|
|
|
|
private ActivityCBuilder(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
}
|
|
|
|
@Override
|
|
public ActivityCBuilder activity(Activity activity) {
|
|
this.activity = Preconditions.checkNotNull(activity);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public CouplesConnectApp_HiltComponents.ActivityC build() {
|
|
Preconditions.checkBuilderRequirement(activity, Activity.class);
|
|
return new ActivityCImpl(singletonCImpl, activityRetainedCImpl, activity);
|
|
}
|
|
}
|
|
|
|
private static final class FragmentCBuilder implements CouplesConnectApp_HiltComponents.FragmentC.Builder {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ActivityCImpl activityCImpl;
|
|
|
|
private Fragment fragment;
|
|
|
|
private FragmentCBuilder(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl, ActivityCImpl activityCImpl) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.activityCImpl = activityCImpl;
|
|
}
|
|
|
|
@Override
|
|
public FragmentCBuilder fragment(Fragment fragment) {
|
|
this.fragment = Preconditions.checkNotNull(fragment);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public CouplesConnectApp_HiltComponents.FragmentC build() {
|
|
Preconditions.checkBuilderRequirement(fragment, Fragment.class);
|
|
return new FragmentCImpl(singletonCImpl, activityRetainedCImpl, activityCImpl, fragment);
|
|
}
|
|
}
|
|
|
|
private static final class ViewWithFragmentCBuilder implements CouplesConnectApp_HiltComponents.ViewWithFragmentC.Builder {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ActivityCImpl activityCImpl;
|
|
|
|
private final FragmentCImpl fragmentCImpl;
|
|
|
|
private View view;
|
|
|
|
private ViewWithFragmentCBuilder(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl, ActivityCImpl activityCImpl,
|
|
FragmentCImpl fragmentCImpl) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.activityCImpl = activityCImpl;
|
|
this.fragmentCImpl = fragmentCImpl;
|
|
}
|
|
|
|
@Override
|
|
public ViewWithFragmentCBuilder view(View view) {
|
|
this.view = Preconditions.checkNotNull(view);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public CouplesConnectApp_HiltComponents.ViewWithFragmentC build() {
|
|
Preconditions.checkBuilderRequirement(view, View.class);
|
|
return new ViewWithFragmentCImpl(singletonCImpl, activityRetainedCImpl, activityCImpl, fragmentCImpl, view);
|
|
}
|
|
}
|
|
|
|
private static final class ViewCBuilder implements CouplesConnectApp_HiltComponents.ViewC.Builder {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ActivityCImpl activityCImpl;
|
|
|
|
private View view;
|
|
|
|
private ViewCBuilder(SingletonCImpl singletonCImpl, ActivityRetainedCImpl activityRetainedCImpl,
|
|
ActivityCImpl activityCImpl) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.activityCImpl = activityCImpl;
|
|
}
|
|
|
|
@Override
|
|
public ViewCBuilder view(View view) {
|
|
this.view = Preconditions.checkNotNull(view);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public CouplesConnectApp_HiltComponents.ViewC build() {
|
|
Preconditions.checkBuilderRequirement(view, View.class);
|
|
return new ViewCImpl(singletonCImpl, activityRetainedCImpl, activityCImpl, view);
|
|
}
|
|
}
|
|
|
|
private static final class ViewModelCBuilder implements CouplesConnectApp_HiltComponents.ViewModelC.Builder {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private SavedStateHandle savedStateHandle;
|
|
|
|
private ViewModelLifecycle viewModelLifecycle;
|
|
|
|
private ViewModelCBuilder(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
}
|
|
|
|
@Override
|
|
public ViewModelCBuilder savedStateHandle(SavedStateHandle handle) {
|
|
this.savedStateHandle = Preconditions.checkNotNull(handle);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public ViewModelCBuilder viewModelLifecycle(ViewModelLifecycle viewModelLifecycle) {
|
|
this.viewModelLifecycle = Preconditions.checkNotNull(viewModelLifecycle);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public CouplesConnectApp_HiltComponents.ViewModelC build() {
|
|
Preconditions.checkBuilderRequirement(savedStateHandle, SavedStateHandle.class);
|
|
Preconditions.checkBuilderRequirement(viewModelLifecycle, ViewModelLifecycle.class);
|
|
return new ViewModelCImpl(singletonCImpl, activityRetainedCImpl, savedStateHandle, viewModelLifecycle);
|
|
}
|
|
}
|
|
|
|
private static final class ServiceCBuilder implements CouplesConnectApp_HiltComponents.ServiceC.Builder {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private Service service;
|
|
|
|
private ServiceCBuilder(SingletonCImpl singletonCImpl) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
}
|
|
|
|
@Override
|
|
public ServiceCBuilder service(Service service) {
|
|
this.service = Preconditions.checkNotNull(service);
|
|
return this;
|
|
}
|
|
|
|
@Override
|
|
public CouplesConnectApp_HiltComponents.ServiceC build() {
|
|
Preconditions.checkBuilderRequirement(service, Service.class);
|
|
return new ServiceCImpl(singletonCImpl, service);
|
|
}
|
|
}
|
|
|
|
private static final class ViewWithFragmentCImpl extends CouplesConnectApp_HiltComponents.ViewWithFragmentC {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ActivityCImpl activityCImpl;
|
|
|
|
private final FragmentCImpl fragmentCImpl;
|
|
|
|
private final ViewWithFragmentCImpl viewWithFragmentCImpl = this;
|
|
|
|
private ViewWithFragmentCImpl(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl, ActivityCImpl activityCImpl,
|
|
FragmentCImpl fragmentCImpl, View viewParam) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.activityCImpl = activityCImpl;
|
|
this.fragmentCImpl = fragmentCImpl;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
private static final class FragmentCImpl extends CouplesConnectApp_HiltComponents.FragmentC {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ActivityCImpl activityCImpl;
|
|
|
|
private final FragmentCImpl fragmentCImpl = this;
|
|
|
|
private FragmentCImpl(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl, ActivityCImpl activityCImpl,
|
|
Fragment fragmentParam) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.activityCImpl = activityCImpl;
|
|
|
|
|
|
}
|
|
|
|
@Override
|
|
public DefaultViewModelFactories.InternalFactoryFactory getHiltInternalFactoryFactory() {
|
|
return activityCImpl.getHiltInternalFactoryFactory();
|
|
}
|
|
|
|
@Override
|
|
public ViewWithFragmentComponentBuilder viewWithFragmentComponentBuilder() {
|
|
return new ViewWithFragmentCBuilder(singletonCImpl, activityRetainedCImpl, activityCImpl, fragmentCImpl);
|
|
}
|
|
}
|
|
|
|
private static final class ViewCImpl extends CouplesConnectApp_HiltComponents.ViewC {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ActivityCImpl activityCImpl;
|
|
|
|
private final ViewCImpl viewCImpl = this;
|
|
|
|
private ViewCImpl(SingletonCImpl singletonCImpl, ActivityRetainedCImpl activityRetainedCImpl,
|
|
ActivityCImpl activityCImpl, View viewParam) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.activityCImpl = activityCImpl;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
private static final class ActivityCImpl extends CouplesConnectApp_HiltComponents.ActivityC {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ActivityCImpl activityCImpl = this;
|
|
|
|
private ActivityCImpl(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl, Activity activityParam) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
|
|
|
|
}
|
|
|
|
@Override
|
|
public void injectMainActivity(MainActivity mainActivity) {
|
|
}
|
|
|
|
@Override
|
|
public DefaultViewModelFactories.InternalFactoryFactory getHiltInternalFactoryFactory() {
|
|
return DefaultViewModelFactories_InternalFactoryFactory_Factory.newInstance(getViewModelKeys(), new ViewModelCBuilder(singletonCImpl, activityRetainedCImpl));
|
|
}
|
|
|
|
@Override
|
|
public Map<Class<?>, Boolean> getViewModelKeys() {
|
|
return LazyClassKeyMap.<Boolean>of(ImmutableMap.<String, Boolean>of(QuestionThreadViewModel_HiltModules_KeyModule_Provide_LazyMapKey.lazyClassKeyName, QuestionThreadViewModel_HiltModules.KeyModule.provide()));
|
|
}
|
|
|
|
@Override
|
|
public ViewModelComponentBuilder getViewModelComponentBuilder() {
|
|
return new ViewModelCBuilder(singletonCImpl, activityRetainedCImpl);
|
|
}
|
|
|
|
@Override
|
|
public FragmentComponentBuilder fragmentComponentBuilder() {
|
|
return new FragmentCBuilder(singletonCImpl, activityRetainedCImpl, activityCImpl);
|
|
}
|
|
|
|
@Override
|
|
public ViewComponentBuilder viewComponentBuilder() {
|
|
return new ViewCBuilder(singletonCImpl, activityRetainedCImpl, activityCImpl);
|
|
}
|
|
}
|
|
|
|
private static final class ViewModelCImpl extends CouplesConnectApp_HiltComponents.ViewModelC {
|
|
private final SavedStateHandle savedStateHandle;
|
|
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ViewModelCImpl viewModelCImpl = this;
|
|
|
|
private Provider<QuestionThreadViewModel> questionThreadViewModelProvider;
|
|
|
|
private ViewModelCImpl(SingletonCImpl singletonCImpl,
|
|
ActivityRetainedCImpl activityRetainedCImpl, SavedStateHandle savedStateHandleParam,
|
|
ViewModelLifecycle viewModelLifecycleParam) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.savedStateHandle = savedStateHandleParam;
|
|
initialize(savedStateHandleParam, viewModelLifecycleParam);
|
|
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
private void initialize(final SavedStateHandle savedStateHandleParam,
|
|
final ViewModelLifecycle viewModelLifecycleParam) {
|
|
this.questionThreadViewModelProvider = new SwitchingProvider<>(singletonCImpl, activityRetainedCImpl, viewModelCImpl, 0);
|
|
}
|
|
|
|
@Override
|
|
public Map<Class<?>, javax.inject.Provider<ViewModel>> getHiltViewModelMap() {
|
|
return LazyClassKeyMap.<javax.inject.Provider<ViewModel>>of(ImmutableMap.<String, javax.inject.Provider<ViewModel>>of(QuestionThreadViewModel_HiltModules_BindsModule_Binds_LazyMapKey.lazyClassKeyName, ((Provider) questionThreadViewModelProvider)));
|
|
}
|
|
|
|
@Override
|
|
public Map<Class<?>, Object> getHiltViewModelAssistedMap() {
|
|
return ImmutableMap.<Class<?>, Object>of();
|
|
}
|
|
|
|
private static final class SwitchingProvider<T> implements Provider<T> {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final ViewModelCImpl viewModelCImpl;
|
|
|
|
private final int id;
|
|
|
|
SwitchingProvider(SingletonCImpl singletonCImpl, ActivityRetainedCImpl activityRetainedCImpl,
|
|
ViewModelCImpl viewModelCImpl, int id) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.viewModelCImpl = viewModelCImpl;
|
|
this.id = id;
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
@Override
|
|
public T get() {
|
|
switch (id) {
|
|
case 0: // com.couplesconnect.app.ui.questions.QuestionThreadViewModel
|
|
return (T) new QuestionThreadViewModel(singletonCImpl.questionThreadRepositoryImplProvider.get(), singletonCImpl.provideQuestionDaoProvider.get(), viewModelCImpl.savedStateHandle);
|
|
|
|
default: throw new AssertionError(id);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
private static final class ActivityRetainedCImpl extends CouplesConnectApp_HiltComponents.ActivityRetainedC {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl = this;
|
|
|
|
private Provider<ActivityRetainedLifecycle> provideActivityRetainedLifecycleProvider;
|
|
|
|
private ActivityRetainedCImpl(SingletonCImpl singletonCImpl,
|
|
SavedStateHandleHolder savedStateHandleHolderParam) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
|
|
initialize(savedStateHandleHolderParam);
|
|
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
private void initialize(final SavedStateHandleHolder savedStateHandleHolderParam) {
|
|
this.provideActivityRetainedLifecycleProvider = DoubleCheck.provider(new SwitchingProvider<ActivityRetainedLifecycle>(singletonCImpl, activityRetainedCImpl, 0));
|
|
}
|
|
|
|
@Override
|
|
public ActivityComponentBuilder activityComponentBuilder() {
|
|
return new ActivityCBuilder(singletonCImpl, activityRetainedCImpl);
|
|
}
|
|
|
|
@Override
|
|
public ActivityRetainedLifecycle getActivityRetainedLifecycle() {
|
|
return provideActivityRetainedLifecycleProvider.get();
|
|
}
|
|
|
|
private static final class SwitchingProvider<T> implements Provider<T> {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ActivityRetainedCImpl activityRetainedCImpl;
|
|
|
|
private final int id;
|
|
|
|
SwitchingProvider(SingletonCImpl singletonCImpl, ActivityRetainedCImpl activityRetainedCImpl,
|
|
int id) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.activityRetainedCImpl = activityRetainedCImpl;
|
|
this.id = id;
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
@Override
|
|
public T get() {
|
|
switch (id) {
|
|
case 0: // dagger.hilt.android.ActivityRetainedLifecycle
|
|
return (T) ActivityRetainedComponentManager_LifecycleModule_ProvideActivityRetainedLifecycleFactory.provideActivityRetainedLifecycle();
|
|
|
|
default: throw new AssertionError(id);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
private static final class ServiceCImpl extends CouplesConnectApp_HiltComponents.ServiceC {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final ServiceCImpl serviceCImpl = this;
|
|
|
|
private ServiceCImpl(SingletonCImpl singletonCImpl, Service serviceParam) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
private static final class SingletonCImpl extends CouplesConnectApp_HiltComponents.SingletonC {
|
|
private final ApplicationContextModule applicationContextModule;
|
|
|
|
private final SingletonCImpl singletonCImpl = this;
|
|
|
|
private Provider<FirestoreQuestionThreadDataSource> firestoreQuestionThreadDataSourceProvider;
|
|
|
|
private Provider<QuestionThreadRepositoryImpl> questionThreadRepositoryImplProvider;
|
|
|
|
private Provider<AppDatabase> provideAppDatabaseProvider;
|
|
|
|
private Provider<QuestionDao> provideQuestionDaoProvider;
|
|
|
|
private SingletonCImpl(ApplicationContextModule applicationContextModuleParam) {
|
|
this.applicationContextModule = applicationContextModuleParam;
|
|
initialize(applicationContextModuleParam);
|
|
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
private void initialize(final ApplicationContextModule applicationContextModuleParam) {
|
|
this.firestoreQuestionThreadDataSourceProvider = DoubleCheck.provider(new SwitchingProvider<FirestoreQuestionThreadDataSource>(singletonCImpl, 1));
|
|
this.questionThreadRepositoryImplProvider = DoubleCheck.provider(new SwitchingProvider<QuestionThreadRepositoryImpl>(singletonCImpl, 0));
|
|
this.provideAppDatabaseProvider = DoubleCheck.provider(new SwitchingProvider<AppDatabase>(singletonCImpl, 3));
|
|
this.provideQuestionDaoProvider = DoubleCheck.provider(new SwitchingProvider<QuestionDao>(singletonCImpl, 2));
|
|
}
|
|
|
|
@Override
|
|
public void injectCouplesConnectApp(CouplesConnectApp couplesConnectApp) {
|
|
}
|
|
|
|
@Override
|
|
public Set<Boolean> getDisableFragmentGetContextFix() {
|
|
return ImmutableSet.<Boolean>of();
|
|
}
|
|
|
|
@Override
|
|
public ActivityRetainedComponentBuilder retainedComponentBuilder() {
|
|
return new ActivityRetainedCBuilder(singletonCImpl);
|
|
}
|
|
|
|
@Override
|
|
public ServiceComponentBuilder serviceComponentBuilder() {
|
|
return new ServiceCBuilder(singletonCImpl);
|
|
}
|
|
|
|
private static final class SwitchingProvider<T> implements Provider<T> {
|
|
private final SingletonCImpl singletonCImpl;
|
|
|
|
private final int id;
|
|
|
|
SwitchingProvider(SingletonCImpl singletonCImpl, int id) {
|
|
this.singletonCImpl = singletonCImpl;
|
|
this.id = id;
|
|
}
|
|
|
|
@SuppressWarnings("unchecked")
|
|
@Override
|
|
public T get() {
|
|
switch (id) {
|
|
case 0: // com.couplesconnect.app.data.repository.QuestionThreadRepositoryImpl
|
|
return (T) new QuestionThreadRepositoryImpl(singletonCImpl.firestoreQuestionThreadDataSourceProvider.get());
|
|
|
|
case 1: // com.couplesconnect.app.data.remote.FirestoreQuestionThreadDataSource
|
|
return (T) new FirestoreQuestionThreadDataSource();
|
|
|
|
case 2: // com.couplesconnect.app.data.local.QuestionDao
|
|
return (T) DatabaseModule_ProvideQuestionDaoFactory.provideQuestionDao(singletonCImpl.provideAppDatabaseProvider.get());
|
|
|
|
case 3: // com.couplesconnect.app.data.local.AppDatabase
|
|
return (T) DatabaseModule_ProvideAppDatabaseFactory.provideAppDatabase(ApplicationContextModule_ProvideContextFactory.provideContext(singletonCImpl.applicationContextModule));
|
|
|
|
default: throw new AssertionError(id);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|