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

edu.stanford.protege.webprotege.match.EntityAnnotationMatcherFactory Maven / Gradle / Ivy

The newest version!
package edu.stanford.protege.webprotege.match;

import edu.stanford.protege.webprotege.criteria.AnnotationPresence;
import edu.stanford.protege.webprotege.index.AnnotationAssertionAxiomsIndex;
import javax.annotation.processing.Generated;
import javax.inject.Inject;
import javax.inject.Provider;
import org.semanticweb.owlapi.model.OWLAnnotation;

@Generated(
  value = "com.google.auto.factory.processor.AutoFactoryProcessor",
  comments = "https://github.com/google/auto/tree/master/factory"
)
public final class EntityAnnotationMatcherFactory {
  private final Provider axiomProviderProvider;

  @Inject
  public EntityAnnotationMatcherFactory(
      Provider axiomProviderProvider) {
    this.axiomProviderProvider = checkNotNull(axiomProviderProvider, 1);
  }

  public EntityAnnotationMatcher create(
      Matcher annotationMatcher, AnnotationPresence annotationPresence) {
    return new EntityAnnotationMatcher(
        checkNotNull(axiomProviderProvider.get(), 1),
        checkNotNull(annotationMatcher, 2),
        checkNotNull(annotationPresence, 3));
  }

  private static  T checkNotNull(T reference, int argumentIndex) {
    if (reference == null) {
      throw new NullPointerException(
          " method argument is null but is not marked @Nullable. Argument index: "
              + argumentIndex);
    }
    return reference;
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy