Class GenericDescriptors

java.lang.Object
org.apache.jackrabbit.oak.spi.descriptors.GenericDescriptors
All Implemented Interfaces:
Descriptors

public class GenericDescriptors extends Object implements Descriptors
Default implementation of the Descriptors interface. Supports overlying of given default descriptors.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs an empty descriptors set.
    Constructs a descriptors set that uses the given base descriptors as base.
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull String[]
    Returns a string array holding all descriptor keys available for this implementation, both the standard descriptors defined by the string constants in this interface and any implementation-specific descriptors.
    @Nullable Value
    getValue(@NotNull String key)
    The value of a single-value descriptor is found by passing the key for that descriptor to this method.
    @Nullable Value[]
    getValues(@NotNull String key)
    The value array of a multi-value descriptor is found by passing the key for that descriptor to this method.
    boolean
    Returns true if key is a valid single-value descriptor; otherwise returns false
    boolean
    Returns true if key is a standard descriptor defined by the string constants in this interface and false if it is either a valid implementation-specific key or not a valid key.
    put(@NotNull String name, @NotNull Value[] values, boolean singleValued, boolean standard)
    Adds a new descriptor to this set of descriptors which overlay the ones from the base set.
    put(@NotNull String name, @NotNull Value value, boolean singleValued, boolean standard)
    Adds a new descriptor to this set of descriptors which overlay the ones from the base set.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • GenericDescriptors

      public GenericDescriptors()
      Constructs an empty descriptors set.
    • GenericDescriptors

      public GenericDescriptors(@Nullable @Nullable Descriptors base)
      Constructs a descriptors set that uses the given base descriptors as base.
      Parameters:
      base - the base descriptors or null
  • Method Details

    • getKeys

      @NotNull public @NotNull String[] getKeys()
      Returns a string array holding all descriptor keys available for this implementation, both the standard descriptors defined by the string constants in this interface and any implementation-specific descriptors. Used in conjunction with Descriptors.getValue(String key) and Descriptors.getValues(String key) to query information about this repository implementation. Note: If this descriptors are based on default descriptors, the returns string array is a merge of this and the base's keys.
      Specified by:
      getKeys in interface Descriptors
      Returns:
      a string array holding all descriptor keys.
    • isStandardDescriptor

      public boolean isStandardDescriptor(@NotNull @NotNull String key)
      Returns true if key is a standard descriptor defined by the string constants in this interface and false if it is either a valid implementation-specific key or not a valid key. Note: If the descriptor with key does not exist in this set, the call is delegated to the base descriptors.
      Specified by:
      isStandardDescriptor in interface Descriptors
      Parameters:
      key - a descriptor key.
      Returns:
      whether key is a standard descriptor.
    • isSingleValueDescriptor

      public boolean isSingleValueDescriptor(@NotNull @NotNull String key)
      Returns true if key is a valid single-value descriptor; otherwise returns false Note: If the descriptor with key does not exist in this set, the call is delegated to the base descriptors.
      Specified by:
      isSingleValueDescriptor in interface Descriptors
      Parameters:
      key - a descriptor key.
      Returns:
      whether the specified descriptor is multi-valued.
    • getValue

      @Nullable public @Nullable Value getValue(@NotNull @NotNull String key)
      The value of a single-value descriptor is found by passing the key for that descriptor to this method. If key is the key of a multi-value descriptor or not a valid key this method returns null. Note: If the descriptor with key does not exist in this set, the call is delegated to the base descriptors.
      Specified by:
      getValue in interface Descriptors
      Parameters:
      key - a descriptor key.
      Returns:
      The value of the indicated descriptor
    • getValues

      @Nullable public @Nullable Value[] getValues(@NotNull @NotNull String key)
      The value array of a multi-value descriptor is found by passing the key for that descriptor to this method. If key is the key of a single-value descriptor then this method returns that value as an array of size one. If key is not a valid key this method returns null. Note: If the descriptor with key does not exist in this set, the call is delegated to the base descriptors.
      Specified by:
      getValues in interface Descriptors
      Parameters:
      key - a descriptor key.
      Returns:
      the value array for the indicated descriptor
    • put

      public GenericDescriptors put(@NotNull @NotNull String name, @NotNull @NotNull Value[] values, boolean singleValued, boolean standard)
      Adds a new descriptor to this set of descriptors which overlay the ones from the base set.
      Parameters:
      name - descriptor name
      values - array of descriptor values
      singleValued - flag indicating if this is single valued descriptor. see Descriptors.isSingleValueDescriptor(String)
      standard - flag indicating if this is a standard descriptor. see Descriptors.isStandardDescriptor(String)
      Returns:
      this suitable for chaining.
    • put

      public GenericDescriptors put(@NotNull @NotNull String name, @NotNull @NotNull Value value, boolean singleValued, boolean standard)
      Adds a new descriptor to this set of descriptors which overlay the ones from the base set.
      Parameters:
      name - descriptor name
      value - descriptor value
      singleValued - flag indicating if this is single valued descriptor. see Descriptors.isSingleValueDescriptor(String)
      standard - flag indicating if this is a standard descriptor. see Descriptors.isStandardDescriptor(String)
      Returns:
      this suitable for chaining.