jakarta.enterprise.inject.build.compatible.spi.InjectionPointInfo Maven / Gradle / Ivy
package jakarta.enterprise.inject.build.compatible.spi;
import jakarta.enterprise.lang.model.AnnotationInfo;
import jakarta.enterprise.lang.model.declarations.DeclarationInfo;
import jakarta.enterprise.lang.model.types.Type;
import java.util.Collection;
/**
* An injection point defined on some bean. Injection points may be fields
* or method parameters.
*
* @since 4.0
*/
public interface InjectionPointInfo {
/**
* Returns the {@link Type type} of this injection point.
*
* @return the type of this injection point, never {@code null}
*/
Type type();
/**
* Returns a collection of qualifiers declared on this injection point, represented as {@link AnnotationInfo}.
*
* @return collection of qualifiers, never {@code null}
*/
Collection qualifiers();
/**
* Returns the declaration of this injection point.
* That is a {@link jakarta.enterprise.lang.model.declarations.FieldInfo FieldInfo} for field injection,
* or {@link jakarta.enterprise.lang.model.declarations.ParameterInfo ParameterInfo} for:
*
* - constructor injection,
* - initializer method,
* - disposer method,
* - producer method,
* - observer method.
*
*
* @return the declaration of this injection point, never {@code null}
*/
DeclarationInfo declaration();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy