Skip to content

Instantly share code, notes, and snippets.

@ericntd
Created July 3, 2021 20:42
Show Gist options
  • Save ericntd/9cde94e31521de0619b03e5e2e5ee864 to your computer and use it in GitHub Desktop.
Save ericntd/9cde94e31521de0619b03e5e2e5ee864 to your computer and use it in GitHub Desktop.

DaggerMyAppComponent

package app.ericn.daggerplain;

import dagger.internal.DoubleCheck;
import dagger.internal.Preconditions;
import javax.annotation.Generated;
import javax.inject.Provider;
import retrofit2.Retrofit;

@Generated(
    value = "dagger.internal.codegen.ComponentProcessor",
    comments = "https://dagger.dev"
)
@SuppressWarnings({
    "unchecked",
    "rawtypes"
})
public final class DaggerMyAppComponent implements MyAppComponent {
  private Provider<Retrofit> retrofitProvider;

  private Provider<CatApi> catApiProvider;

  private Provider<CatRepository> catRepositoryProvider;

  private DaggerMyAppComponent(CatModule catModuleParam) {

    initialize(catModuleParam);
  }

  public static Builder builder() {
    return new Builder();
  }

  public static MyAppComponent create() {
    return new Builder().build();
  }

  @SuppressWarnings("unchecked")
  private void initialize(final CatModule catModuleParam) {
    this.retrofitProvider = DoubleCheck.provider(CatModule_RetrofitFactory.create(catModuleParam));
    this.catApiProvider = DoubleCheck.provider(CatModule_CatApiFactory.create(catModuleParam, retrofitProvider));
    this.catRepositoryProvider = DoubleCheck.provider(CatRepository_Factory.create(catApiProvider));
  }

  @Override
  public void inject(MainActivity mainActivity) {
    injectMainActivity(mainActivity);}

  private MainActivity injectMainActivity(MainActivity instance) {
    MainActivity_MembersInjector.injectCatRepository(instance, catRepositoryProvider.get());
    return instance;
  }

  public static final class Builder {
    private CatModule catModule;

    private Builder() {
    }

    public Builder catModule(CatModule catModule) {
      this.catModule = Preconditions.checkNotNull(catModule);
      return this;
    }

    /**
     * @deprecated This module is declared, but an instance is not used in the component. This method is a no-op. For more, see https://dagger.dev/unused-modules.
     */
    @Deprecated
    public Builder contextModule(ContextModule contextModule) {
      Preconditions.checkNotNull(contextModule);
      return this;
    }

    public MyAppComponent build() {
      if (catModule == null) {
        this.catModule = new CatModule();
      }
      return new DaggerMyAppComponent(catModule);
    }
  }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment