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

org.kohsuke.stapler.AnnotationProcessorFactoryImpl Maven / Gradle / Ivy

package org.kohsuke.stapler;

import com.sun.mirror.apt.AnnotationProcessor;
import com.sun.mirror.apt.AnnotationProcessorEnvironment;
import com.sun.mirror.apt.AnnotationProcessorFactory;
import com.sun.mirror.apt.AnnotationProcessors;
import com.sun.mirror.declaration.AnnotationTypeDeclaration;

import java.util.Collection;
import java.util.Collections;
import java.util.Set;

/**
 * @author Kohsuke Kawaguchi
 */
public final class AnnotationProcessorFactoryImpl implements AnnotationProcessorFactory {
    public Collection supportedOptions() {
        return Collections.emptyList();
    }

    public Collection supportedAnnotationTypes() {
        return Collections.singleton("*");
    }

    public AnnotationProcessor getProcessorFor(Set set, AnnotationProcessorEnvironment env) {
        return AnnotationProcessors.getCompositeAnnotationProcessor(
            new ExportedBeanAnnotationProcessor(env),
            new ConstructorProcessor(env),
            new QueryParameterAnnotationProcessor(env)
        );
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy