com.google.gerrit.server.mail.send.RegisterNewEmailDecoratorImplFactory Maven / Gradle / Ivy
package com.google.gerrit.server.mail.send;
import com.google.gerrit.server.IdentifiedUser;
import com.google.gerrit.server.mail.EmailTokenVerifier;
import javax.annotation.processing.Generated;
import javax.inject.Inject;
import javax.inject.Provider;
@Generated(
value = "com.google.auto.factory.processor.AutoFactoryProcessor",
comments = "https://github.com/google/auto/tree/master/factory"
)
public final class RegisterNewEmailDecoratorImplFactory {
private final Provider argsProvider;
private final Provider tokenVerifierProvider;
private final Provider callingUserProvider;
@Inject
public RegisterNewEmailDecoratorImplFactory(Provider argsProvider,
Provider tokenVerifierProvider,
Provider callingUserProvider) {
this.argsProvider = checkNotNull(argsProvider, 1);
this.tokenVerifierProvider = checkNotNull(tokenVerifierProvider, 2);
this.callingUserProvider = checkNotNull(callingUserProvider, 3);
}
public RegisterNewEmailDecoratorImpl create(String address) {
return new RegisterNewEmailDecoratorImpl(checkNotNull(argsProvider.get(), 1), checkNotNull(tokenVerifierProvider.get(), 2), checkNotNull(callingUserProvider.get(), 3), checkNotNull(address, 4));
}
private static T checkNotNull(T reference, int argumentIndex) {
if (reference == null) {
throw new NullPointerException("@AutoFactory method argument is null but is not marked @Nullable. Argument index: " + argumentIndex);
}
return reference;
}
}