Interface PropertyState

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      int count()
      The number of values of this property.
      @NotNull java.lang.String getName()  
      Type<?> getType()
      Determine the type of this property
      <T> T getValue​(Type<T> type)
      Value of this property.
      <T> T getValue​(Type<T> type, int index)
      Value at the given index.
      boolean isArray()
      Determine whether the value is an array of atoms
      long size()
      The size of the value of this property.
      long size​(int index)
      The size of the value at the given index.
    • Method Detail

      • getName

        @NotNull
        @NotNull java.lang.String getName()
        Returns:
        the name of this property state
      • isArray

        boolean isArray()
        Determine whether the value is an array of atoms
        Returns:
        true if and only if the value is an array of atoms.
      • getType

        Type<?> getType()
        Determine the type of this property
        Returns:
        the type of this property
      • getValue

        @NotNull
        <T> T getValue​(Type<T> type)
        Value of this property. The type of the return value is determined by the target type argument. If type.isArray() is true, this method returns an Iterable of the base type of type containing all values of this property. If the target type is not the same as the type of this property an attempt is made to convert the value to the target type. If the conversion fails an exception is thrown. The actual conversions which take place are those defined in the org.apache.jackrabbit.oak.plugins.value.Conversions class.
        Type Parameters:
        T -
        Parameters:
        type - target type
        Returns:
        the value of this property
        Throws:
        java.lang.IllegalStateException - if type.isArray() == false and this.isArray() == true. In other words, when trying to convert from an array to an atom.
        java.lang.IllegalArgumentException - if type refers to an unknown type.
        java.lang.NumberFormatException - if conversion to a number failed.
        java.lang.UnsupportedOperationException - if conversion to boolean failed.
      • getValue

        @NotNull
        <T> T getValue​(Type<T> type,
                       int index)
        Value at the given index. The type of the return value is determined by the target type argument. If the target type is not the same as the type of this property an attempt is made to convert the value to the target type. If the conversion fails an exception is thrown. The actual conversions which take place are those defined in the org.apache.jackrabbit.oak.plugins.value.Conversions class.
        Type Parameters:
        T -
        Parameters:
        type - target type
        index -
        Returns:
        the value of this property at the given index
        Throws:
        java.lang.IndexOutOfBoundsException - if index is less than 0 or greater or equals count().
        java.lang.IllegalArgumentException - if type refers to an unknown type or if type.isArray() is true.
      • size

        long size()
        The size of the value of this property.
        Returns:
        size of the value of this property
        Throws:
        java.lang.IllegalStateException - if the value is an array
      • size

        long size​(int index)
        The size of the value at the given index.
        Parameters:
        index -
        Returns:
        size of the value at the given index.
        Throws:
        java.lang.IndexOutOfBoundsException - if index is less than 0 or greater or equals count().
      • count

        int count()
        The number of values of this property. 1 for atoms.
        Returns:
        number of values