org.modeshape.jcr.value.basic

## Class ObjectValueFactory

- java.lang.Object
- - org.modeshape.jcr.value.basic.AbstractValueFactory<Object>
  - - org.modeshape.jcr.value.basic.ObjectValueFactory

- All Implemented Interfaces:
    ValueFactory<Object>

      @Immutable
      public class ObjectValueFactory
      extends AbstractValueFactory<Object>

  The standard `ValueFactory` for `PropertyType.OBJECT` values.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.modeshape.jcr.value.basic.AbstractValueFactory

      `AbstractValueFactory.ConvertingIterator<ValueType>`

  - ### Field Summary

    - ### Fields inherited from class org.modeshape.jcr.value.basic.AbstractValueFactory

      `decoder, propertyType, valueFactories`

    - ### Fields inherited from interface org.modeshape.jcr.value.ValueFactory

      `DEFAULT_DECODER, DEFAULT_ENCODER`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ObjectValueFactory(TextDecoder decoder, ValueFactories factories)` Create a new instance.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `create(BigDecimal value)` Create a value from a decimal.
    `Object` | `create(BinaryValue value)` Create a value from the binary content given by the supplied stream.
    `Object` | `create(boolean value)` Create a boolean from a string.
    `Object` | `create(byte[] value)` Create a value from the binary content given by the supplied array.
    `Object` | `create(Calendar value)` Create a value from a Calendar instance.
    `Object` | `create(Date value)` Create a value from a date.
    `Object` | `create(DateTime value)` Create a value from a date-time instant.
    `Object` | `create(double value)` Create a value from a double.
    `Object` | `create(float value)` Create a value from a float.
    `Object` | `create(InputStream stream)` Create a value from the binary content given by the supplied stream.
    `Object` | `create(int value)` Create a value from an integer.
    `Object` | `create(long value)` Create a long from a string.
    `Object` | `create(Name value)` Create a value from a name.
    `Object` | `create(NodeKey value)` Create a value from a `NodeKey`.
    `Object` | `create(Object value)` Create a value from the specified information by determining which other `create` method applies and delegating to that method.
    `Object[]` | `create(Object[] values)` Create an array of values from the specified information by determining which other `create` method applies for each object and then delegating to that method.
    `Object` | `create(Path.Segment value)` Create a value from a path segment.
    `Object` | `create(Path value)` Create a value from a path.
    `Object` | `create(Reference value)` Create a value from a reference.
    `Object` | `create(String value)` Create a value from a string, using no decoding.
    `Object` | `create(String value, TextDecoder decoder)` Create a value from a string, using the supplied decoder.
    `Object` | `create(URI value)` Create a value from a URI.
    `Object` | `create(UUID value)` Create a value from a UUID.
    `Object[]` | `createEmptyArray(int length)` Creates an empty array of the given type.
    `protected ValueFactory<BinaryValue>` | `getBinaryValueFactory()`
    `ValueFactory<Object>` | `with(ValueFactories valueFactories)` Return a potentially new copy of this factory that uses the supplied ValueFactories object.

    - ### Methods inherited from class org.modeshape.jcr.value.basic.AbstractValueFactory

      `create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, create, getDecoder, getDecoder, getPropertyType, getStringValueFactory`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ObjectValueFactory

          public ObjectValueFactory(TextDecoder decoder,
                            ValueFactories factories)

      Create a new instance.
      Parameters:
        `decoder` - the text decoder; may be null if the default decoder should be used
        `factories` - the set of value factories, used to obtain the `string value factory`; may not be null

  - ### Method Detail

    - #### with

          public ValueFactory<Object> with(ValueFactories valueFactories)

      Description copied from interface: `ValueFactory`
      Return a potentially new copy of this factory that uses the supplied ValueFactories object.
      Parameters:
        `valueFactories` - the value factories object; may not be null
      Returns:
        the factory, which may be a new instance or may be this object if the supplied value factories is the same as used by this factory; never null

    - #### getBinaryValueFactory

          protected final ValueFactory<BinaryValue> getBinaryValueFactory()

      Returns:
        binaryValueFactory

    - #### create

          public Object create(String value)

      Description copied from interface: `ValueFactory`
      Create a value from a string, using no decoding.
      Parameters:
        `value` - the string from which the value is to be created
      Returns:
        the value, or null if the supplied string is null
      See Also:
        `ValueFactory.create(String, TextDecoder)`

    - #### create

          public Object create(String value,
                      TextDecoder decoder)

      Description copied from interface: `ValueFactory`
      Create a value from a string, using the supplied decoder.
      Parameters:
        `value` - the string from which the value is to be created
        `decoder` - the decoder that should be used; if null, the `default decoder` is used
      Returns:
        the value, or null if the supplied string is null
      See Also:
        `ValueFactory.create(String)`

    - #### create

          public Object create(int value)

      Description copied from interface: `ValueFactory`
      Create a value from an integer.
      Parameters:
        `value` - the integer from which the value is to be created
      Returns:
        the value; never null

    - #### create

          public Object create(long value)

      Description copied from interface: `ValueFactory`
      Create a long from a string.
      Parameters:
        `value` - the string from which the long is to be created
      Returns:
        the value; never null

    - #### create

          public Object create(boolean value)

      Description copied from interface: `ValueFactory`
      Create a boolean from a string.
      Parameters:
        `value` - the boolean from which the value is to be created
      Returns:
        the value; never null

    - #### create

          public Object create(float value)

      Description copied from interface: `ValueFactory`
      Create a value from a float.
      Parameters:
        `value` - the float from which the value is to be created
      Returns:
        the value; never null

    - #### create

          public Object create(double value)

      Description copied from interface: `ValueFactory`
      Create a value from a double.
      Parameters:
        `value` - the double from which the value is to be created
      Returns:
        the value; never null

    - #### create

          public Object create(BigDecimal value)

      Description copied from interface: `ValueFactory`
      Create a value from a decimal.
      Parameters:
        `value` - the decimal from which the value is to be created
      Returns:
        the value, or null if the supplied decimal is null

    - #### create

          public Object create(Calendar value)

      Description copied from interface: `ValueFactory`
      Create a value from a Calendar instance.
      Parameters:
        `value` - the Calendar instance from which the value is to be created
      Returns:
        the value, or null if the supplied Calendar is null

    - #### create

          public Object create(Date value)

      Description copied from interface: `ValueFactory`
      Create a value from a date.
      Parameters:
        `value` - the date from which the value is to be created
      Returns:
        the value, or null if the supplied date is null

    - #### create

          public Object create(DateTime value)

      Description copied from interface: `ValueFactory`
      Create a value from a date-time instant.
      Parameters:
        `value` - the date-time instant from which the value is to be created
      Returns:
        the value, or null if the supplied date is null

    - #### create

          public Object create(Name value)

      Description copied from interface: `ValueFactory`
      Create a value from a name.
      Parameters:
        `value` - the name from which the value is to be created
      Returns:
        the value, or null if the supplied name is null

    - #### create

          public Object create(Path value)

      Description copied from interface: `ValueFactory`
      Create a value from a path.
      Parameters:
        `value` - the path from which the value is to be created
      Returns:
        the value, or null if the supplied path is null

    - #### create

          public Object create(Path.Segment value)

      Description copied from interface: `ValueFactory`
      Create a value from a path segment.
      Parameters:
        `value` - the path segment from which the value is to be created
      Returns:
        the value, or null if the supplied path segment is null

    - #### create

          public Object create(Reference value)

      Description copied from interface: `ValueFactory`
      Create a value from a reference.
      Parameters:
        `value` - the reference from which the value is to be created
      Returns:
        the value, or null if the supplied reference is null

    - #### create

          public Object create(URI value)

      Description copied from interface: `ValueFactory`
      Create a value from a URI.
      Parameters:
        `value` - the URI from which the value is to be created
      Returns:
        the value, or null if the supplied URI is null

    - #### create

          public Object create(UUID value)

      Description copied from interface: `ValueFactory`
      Create a value from a UUID.
      Parameters:
        `value` - the UUID from which the value is to be created
      Returns:
        the value, or null if the supplied URI is null

    - #### create

          public Object create(NodeKey value)
                        throws ValueFormatException

      Description copied from interface: `ValueFactory`
      Create a value from a `NodeKey`.
      Parameters:
        `value` - the node key from which the value is to be created
      Returns:
        the value, or null if the supplied URI is null
      Throws:
        `ValueFormatException` - if the conversion from a NodeKey could not be performed

    - #### create

          public Object create(Object value)

      Description copied from interface: `ValueFactory`
      Create a value from the specified information by determining which other `create` method applies and delegating to that method. Note that this method only will call `create` methods that take a single parameter; so this excludes `ValueFactory.create(InputStream)` and `ValueFactory.create(String, TextDecoder)`.
      Specified by:
        `create` in interface `ValueFactory<Object>`
      Overrides:
        `create` in class `AbstractValueFactory<Object>`
      Parameters:
        `value` - the value
      Returns:
        the new value, or null if the supplied parameter is null

    - #### create

          public Object[] create(Object[] values)

      Description copied from interface: `ValueFactory`
      Create an array of values from the specified information by determining which other `create` method applies for each object and then delegating to that method. Note that this method will not consider `ValueFactory.create(InputStream)` and `ValueFactory.create(String, TextDecoder)`.
      Specified by:
        `create` in interface `ValueFactory<Object>`
      Overrides:
        `create` in class `AbstractValueFactory<Object>`
      Parameters:
        `values` - the values
      Returns:
        the new value, or null if the supplied parameter is null

    - #### create

          public Object create(byte[] value)

      Description copied from interface: `ValueFactory`
      Create a value from the binary content given by the supplied array.
      Parameters:
        `value` - the content to be used to create the value
      Returns:
        the value, or null if the supplied stream is null

    - #### create

          public Object create(BinaryValue value)
                        throws ValueFormatException,
                               IoException

      Description copied from interface: `ValueFactory`
      Create a value from the binary content given by the supplied stream.
      Parameters:
        `value` - the binary object to be used to create the value
      Returns:
        the value, or null if the supplied stream is null
      Throws:
        `ValueFormatException` - if the conversion from the binary object could not be performed
        `IoException` - If an unexpected problem occurs while accessing the supplied binary value (such as an `IOException`).

    - #### create

          public Object create(InputStream stream)

      Description copied from interface: `ValueFactory`
      Create a value from the binary content given by the supplied stream.
      Parameters:
        `stream` - the stream containing the content to be used to create the value
      Returns:
        the value, or null if the supplied stream is null

    - #### createEmptyArray

          public Object[] createEmptyArray(int length)

      Description copied from interface: `ValueFactory`
      Creates an empty array of the given type.
      Parameters:
        `length` - the length of the array; must be a positive value
      Returns:
        an empty array of the given length.

Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.