Annotation Type HierarchicalPageProperty


@Target({METHOD,FIELD,PARAMETER}) @Retention(RUNTIME) @InjectAnnotation public @interface HierarchicalPageProperty
Injects a hierarchical page property. Traverses upwards in the page hierarchy until the property is found. Note: not supported by the javax.Inject annotation because of performance reasons. Only direct annotation is supported.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    Specifies if it should use the hierarchy to search for the page property.
    org.apache.sling.models.annotations.injectorspecific.InjectionStrategy
    if set to REQUIRED injection is mandatory, if set to OPTIONAL injection is optional, in case of DEFAULT the standard annotations (Optional, Required) are used.
    int
    Start traversing upwards in the hierarchy from a specific level, skipping lower levels.
    boolean
    Whether to use the current page (true) or the resource page (false).
    Specifies the name of the value from the value map to take.
  • Element Details

    • traverseFromAbsoluteParent

      int traverseFromAbsoluteParent
      Start traversing upwards in the hierarchy from a specific level, skipping lower levels.
      Since:
      6.0.16
      Default:
      -1
    • useCurrentPage

      boolean useCurrentPage
      Whether to use the current page (true) or the resource page (false).
      Returns:
      Default:
      false
    • value

      String value
      Specifies the name of the value from the value map to take. If empty, then the name is derived from the method or field.
      Default:
      ""
    • inherit

      boolean inherit
      Specifies if it should use the hierarchy to search for the page property. If false, it will only look at the current page.
      Default:
      true
    • injectionStrategy

      org.apache.sling.models.annotations.injectorspecific.InjectionStrategy injectionStrategy
      if set to REQUIRED injection is mandatory, if set to OPTIONAL injection is optional, in case of DEFAULT the standard annotations (Optional, Required) are used. If even those are not available the default injection strategy defined on the Model applies. Default value = DEFAULT.
      Default:
      DEFAULT