Class BindingsInjector
java.lang.Object
org.apache.sling.models.impl.injectors.BindingsInjector
- All Implemented Interfaces:
Injector
,StaticInjectAnnotationProcessorFactory
,ValuePreparer
public class BindingsInjector
extends Object
implements Injector, StaticInjectAnnotationProcessorFactory, ValuePreparer
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription@NotNull String
getName()
Return a logical name for the injector.getValue
(@NotNull Object adaptable, String name, @NotNull Type type, @NotNull AnnotatedElement element, @NotNull DisposalCallbackRegistry callbackRegistry) Produce a value for an injection point.@NotNull Object
prepareValue
(@NotNull Object adaptable) Prepare a value from the adaptable.
-
Constructor Details
-
BindingsInjector
public BindingsInjector()
-
-
Method Details
-
getName
Description copied from interface:Injector
Return a logical name for the injector. Used in resolving@Source
annotations. -
getValue
public Object getValue(@NotNull @NotNull Object adaptable, String name, @NotNull @NotNull Type type, @NotNull @NotNull AnnotatedElement element, @NotNull @NotNull DisposalCallbackRegistry callbackRegistry) Description copied from interface:Injector
Produce a value for an injection point.- Specified by:
getValue
in interfaceInjector
- Parameters:
adaptable
- the object which should be used as the basis for value resolution.name
- the injection point name (may be onlynull
if injector implements theAcceptsNullName
interface, otherwise nevernull
)type
- the declared type of the injection pointelement
- the injection point itselfcallbackRegistry
- a registry object to register a callback object which will be invoked when the adapted object is disposed.- Returns:
- the value to be injected or null if no value could be resolved
-
createAnnotationProcessor
- Specified by:
createAnnotationProcessor
in interfaceStaticInjectAnnotationProcessorFactory
- Parameters:
element
- the field or method which is annotated- Returns:
- a ModelAnnotationProcessor in case there is a known injector-specific annotation on the given element found otherwise null
-
prepareValue
Description copied from interface:ValuePreparer
Prepare a value from the adaptable.- Specified by:
prepareValue
in interfaceValuePreparer
- Parameters:
adaptable
- the adaptable- Returns:
- a prepared value or ObjectUtils.NULL if a value is not preparable
-