All Downloads are FREE. Search and download functionalities are using the official Maven repository.

dagger.internal.codegen.validation.AutoValue_ModelBindingGraphConverter_BindingGraphImpl Maven / Gradle / Ivy

There is a newer version: 2.52
Show newest version
package dagger.internal.codegen.validation;

import com.google.common.collect.ImmutableSetMultimap;
import com.google.common.graph.ImmutableNetwork;
import com.google.errorprone.annotations.concurrent.LazyInit;
import dagger.model.BindingGraph;
import java.lang.Class;
import java.lang.Override;
import java.lang.SuppressWarnings;

final class AutoValue_ModelBindingGraphConverter_BindingGraphImpl extends $AutoValue_ModelBindingGraphConverter_BindingGraphImpl {
  @LazyInit
  @SuppressWarnings("Immutable")
  private transient volatile ImmutableSetMultimap, ? extends BindingGraph.Node> nodesByClass;

  AutoValue_ModelBindingGraphConverter_BindingGraphImpl(
      ImmutableNetwork network$,
      boolean isFullBindingGraph$) {
    super(network$, isFullBindingGraph$);
  }

  @Override
  public ImmutableSetMultimap, ? extends BindingGraph.Node> nodesByClass() {
    if (nodesByClass == null) {
      synchronized (this) {
        if (nodesByClass == null) {
          nodesByClass = super.nodesByClass();
          if (nodesByClass == null) {
            throw new NullPointerException("nodesByClass() cannot return null");
          }
        }
      }
    }
    return nodesByClass;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy