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

jakarta.enterprise.inject.build.compatible.spi.AnnotationConfig Maven / Gradle / Ivy

package jakarta.enterprise.inject.build.compatible.spi;

import jakarta.enterprise.lang.model.AnnotationAttribute;
import jakarta.enterprise.lang.model.AnnotationInfo;
import jakarta.enterprise.lang.model.declarations.ClassInfo;
import java.lang.annotation.Annotation;
import java.util.function.Predicate;

// TODO better name?
// TODO devise a builder-style API instead (see also Annotations)
public interface AnnotationConfig {
    void addAnnotation(Class annotationType, AnnotationAttribute... attributes);

    void addAnnotation(ClassInfo annotationType, AnnotationAttribute... attributes);

    void addAnnotation(AnnotationInfo annotation);

    void addAnnotation(Annotation annotation);

    void removeAnnotation(Predicate predicate);

    void removeAllAnnotations();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy