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

com.google.gerrit.entities.AutoValue_SubmitRequirementResult Maven / Gradle / Ivy

The newest version!
package com.google.gerrit.entities;

import com.google.errorprone.annotations.concurrent.LazyInit;
import java.lang.Boolean;
import java.lang.Override;
import java.lang.SuppressWarnings;
import java.util.Optional;
import javax.annotation.processing.Generated;
import org.eclipse.jgit.lib.ObjectId;

@Generated("com.google.auto.value.extension.memoized.processor.MemoizeExtension")
final class AutoValue_SubmitRequirementResult extends $AutoValue_SubmitRequirementResult {
  @LazyInit
  @SuppressWarnings("Immutable")
  private transient volatile SubmitRequirementResult.Status status;

  @LazyInit
  @SuppressWarnings("Immutable")
  private transient volatile boolean fulfilled;

  @LazyInit
  @SuppressWarnings("Immutable")
  private transient volatile boolean fulfilled$Memoized;

  AutoValue_SubmitRequirementResult(SubmitRequirement submitRequirement,
      Optional applicabilityExpressionResult,
      Optional submittabilityExpressionResult,
      Optional overrideExpressionResult,
      ObjectId patchSetCommitId, Optional legacy, Optional forced,
      Optional hidden) {
    super(submitRequirement, applicabilityExpressionResult, submittabilityExpressionResult, overrideExpressionResult, patchSetCommitId, legacy, forced, hidden);
  }

  @Override
  public SubmitRequirementResult.Status status() {
    if (status == null) {
      synchronized (this) {
        if (status == null) {
          status = super.status();
          if (status == null) {
            throw new NullPointerException("status() cannot return null");
          }
        }
      }
    }
    return status;
  }

  @Override
  public boolean fulfilled() {
    if (!fulfilled$Memoized) {
      synchronized (this) {
        if (!fulfilled$Memoized) {
          fulfilled = super.fulfilled();
          fulfilled$Memoized = true;
        }
      }
    }
    return fulfilled;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy