Class MultiGenericPropertyState

All Implemented Interfaces:
org.apache.jackrabbit.oak.api.PropertyState

public class MultiGenericPropertyState extends EmptyPropertyState
  • Field Details

  • Constructor Details

  • Method Details

    • dateProperty

      public static org.apache.jackrabbit.oak.api.PropertyState dateProperty(String name, Iterable<String> values)
      Create a multi valued PropertyState from a list of dates.
      Parameters:
      name - The name of the property state
      values - The values of the property state
      Returns:
      The new property state of type Type.DATES
    • nameProperty

      public static org.apache.jackrabbit.oak.api.PropertyState nameProperty(String name, Iterable<String> values)
      Create a multi valued PropertyState from a list of names. No validation is performed on the strings passed for values.
      Parameters:
      name - The name of the property state
      values - The values of the property state
      Returns:
      The new property state of type Type.NAMES
    • pathProperty

      public static org.apache.jackrabbit.oak.api.PropertyState pathProperty(String name, Iterable<String> values)
      Create a multi valued PropertyState from a list of paths. No validation is performed on the strings passed for values.
      Parameters:
      name - The name of the property state
      values - The values of the property state
      Returns:
      The new property state of type Type.PATHS
    • referenceProperty

      public static org.apache.jackrabbit.oak.api.PropertyState referenceProperty(String name, Iterable<String> values)
      Create a multi valued PropertyState from a list of references. No validation is performed on the strings passed for values.
      Parameters:
      name - The name of the property state
      values - The values of the property state
      Returns:
      The new property state of type Type.REFERENCES
    • weakreferenceProperty

      public static org.apache.jackrabbit.oak.api.PropertyState weakreferenceProperty(String name, Iterable<String> values)
      Create a multi valued PropertyState from a list of weak references. No validation is performed on the strings passed for values.
      Parameters:
      name - The name of the property state
      values - The values of the property state
      Returns:
      The new property state of type Type.WEAKREFERENCES
    • uriProperty

      public static org.apache.jackrabbit.oak.api.PropertyState uriProperty(String name, Iterable<String> values)
      Create a multi valued PropertyState from a list of URIs. No validation is performed on the strings passed for values.
      Parameters:
      name - The name of the property state
      values - The values of the property state
      Returns:
      The new property state of type Type.URIS
    • getConverter

      public Conversions.Converter getConverter(String value)
      Create a converter for converting a value to other types.
      Parameters:
      value - The value to convert
      Returns:
      A converter for the value of this property
    • getType

      public org.apache.jackrabbit.oak.api.Type<?> getType()
    • getValue

      @NotNull public <S> S getValue(org.apache.jackrabbit.oak.api.Type<S> type)
      Specified by:
      getValue in interface org.apache.jackrabbit.oak.api.PropertyState
      Overrides:
      getValue in class EmptyPropertyState
      Returns:
      An empty list if type.isArray() is true.
      Throws:
      IllegalStateException - if type.isArray() is false.
      IllegalArgumentException - if type is not one of the values defined in Type
    • getValue

      @NotNull public <S> S getValue(org.apache.jackrabbit.oak.api.Type<S> type, int index)
      Specified by:
      getValue in interface org.apache.jackrabbit.oak.api.PropertyState
      Overrides:
      getValue in class EmptyPropertyState
      Throws:
      IllegalArgumentException - if type is not one of the values defined in Type or if type.isArray() is true
      IndexOutOfBoundsException - if index >= count().
    • count

      public final int count()
      Specified by:
      count in interface org.apache.jackrabbit.oak.api.PropertyState
      Overrides:
      count in class EmptyPropertyState
      Returns:
      0
    • size

      public long size(int index)
      Specified by:
      size in interface org.apache.jackrabbit.oak.api.PropertyState
      Overrides:
      size in class EmptyPropertyState