com.google.gerrit.server.mail.send.ChangeEmailImplFactory Maven / Gradle / Ivy
The newest version!
package com.google.gerrit.server.mail.send;
import com.google.gerrit.entities.Change;
import com.google.gerrit.entities.Project;
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 ChangeEmailImplFactory {
private final Provider argsProvider;
@Inject
public ChangeEmailImplFactory(Provider argsProvider) {
this.argsProvider = checkNotNull(argsProvider, 1);
}
public ChangeEmailImpl create(Project.NameKey project, Change.Id changeId,
ChangeEmail.ChangeEmailDecorator changeEmailDecorator) {
return new ChangeEmailImpl(checkNotNull(argsProvider.get(), 1), checkNotNull(project, 2), checkNotNull(changeId, 3), checkNotNull(changeEmailDecorator, 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;
}
}