Class ResourcePathInjector

java.lang.Object
org.apache.sling.models.impl.injectors.ResourcePathInjector
All Implemented Interfaces:
AcceptsNullName, Injector, StaticInjectAnnotationProcessorFactory

public class ResourcePathInjector extends Object implements Injector, AcceptsNullName, StaticInjectAnnotationProcessorFactory
  • Constructor Details

    • ResourcePathInjector

      public ResourcePathInjector()
  • Method Details

    • getName

      @NotNull public @NotNull String getName()
      Description copied from interface: Injector
      Return a logical name for the injector. Used in resolving
      @Source
      annotations.
      Specified by:
      getName in interface Injector
      Returns:
      the injector's name
    • getValue

      public Object getValue(@NotNull @NotNull Object adaptable, String name, @NotNull @NotNull Type declaredType, @NotNull @NotNull AnnotatedElement element, @NotNull @NotNull DisposalCallbackRegistry callbackRegistry)
      Description copied from interface: Injector
      Produce a value for an injection point.
      Specified by:
      getValue in interface Injector
      Parameters:
      adaptable - the object which should be used as the basis for value resolution.
      name - the injection point name (may be only null if injector implements the AcceptsNullName interface, otherwise never null)
      declaredType - the declared type of the injection point
      element - the injection point itself
      callbackRegistry - 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

      public InjectAnnotationProcessor2 createAnnotationProcessor(AnnotatedElement element)
      Specified by:
      createAnnotationProcessor in interface StaticInjectAnnotationProcessorFactory
      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
    • getResourceResolver

      protected ResourceResolver getResourceResolver(Object adaptable)
    • getValueMap

      @Nullable protected @Nullable ValueMap getValueMap(Object adaptable)
      Retrieve the ValueMap from the given adaptable. This succeeds, if the adaptable is either Otherwise null is returned.
      Parameters:
      adaptable - Adaptable
      Returns:
      a ValueMap or null.
    • isDeclaredTypeCollection

      protected boolean isDeclaredTypeCollection(Type declaredType)