public interface Value
Value object can be used without knowing the actual property type (STRING, DOUBLE, BINARY etc.).
Any implementation of this interface must adhere to the following behavior:
Value object can be read using type-specific get methods. These methods are divided into two groups:
get methods getString(), getDate(), getLong(), getDouble() and getBoolean().getStream().Value object has been read once using getStream(), all subsequent calls to getStream() will return the same Stream object. This may mean, for example, that the stream returned is fully or partially consumed. In order to get a fresh stream the Value object must be reacquired via Property.getValue() or Property.getValues().Value object has been read once using getStream(), any subsequent call to any of the non-stream get methods will throw an IllegalStateException. In order to successfully invoke a non-stream get method, the Value must be reacquired.Value object has been read once using a non-stream get method, any subsequent call to getStream() will throw an IllegalStateException. In order to successfully invoke getStream(), the Value must be reacquired.Two Value instances, v1 and v2, are considered equal if and only if:
v1.getType() == v2.getType(), and,v1.getString().equals(v2.getString())Value instances by converting them to string form may not be practical in some cases (for example, if the values are very large binaries). Consequently, the above is intended as a normative definition of Value equality but not as a procedural test of equality. It is assumed that implementations will have efficient means of determining equality that conform with the above definition.| Modifier and Type | Method and Description |
|---|---|
boolean |
getBoolean()
Returns a
Boolean representation of this value. |
java.util.Calendar |
getDate()
Returns a
Calendar representation of this value. |
double |
getDouble()
Returns a
double representation of this value. |
long |
getLong()
Returns a
long representation of this value. |
java.io.InputStream |
getStream()
Returns an
InputStream representation of this value. |
java.lang.String |
getString()
Returns a
String representation of this value. |
int |
getType()
Returns the
type of this Value. |
java.lang.String getString()
throws ValueFormatException,
java.lang.IllegalStateException,
RepositoryException
String representation of this value.
If this value cannot be converted to a string, a ValueFormatException is thrown.
If getStream has previously been called on this Value instance, an IllegalStateException is thrown. In this case a new Value instance must be acquired in order to successfully call getString.
A RepositoryException is thrown if another error occurs.
String representation of the value of this property.ValueFormatException - if conversion to a String is not possible.java.lang.IllegalStateException - if getStream has previously been called on this Value instance.RepositoryException - if another error occurs.
java.io.InputStream getStream()
throws java.lang.IllegalStateException,
RepositoryException
InputStream representation of this value. Uses the standard conversion to binary (see JCR specification)
If a non-stream get method has previously been called on this Value instance, an IllegalStateException is thrown. In this case a new Value instance must be acquired in order to successfully call getStream.
A RepositoryException is thrown if another error occurs.
InputStream representation of this value.java.lang.IllegalStateException - if a non-stream get method has previously been called on this Value instance.RepositoryException - if another error occurs.
long getLong()
throws java.lang.IllegalStateException,
RepositoryException
long representation of this value.
If this value cannot be converted to a long, a ValueFormatException is thrown.
If getStream has previously been called on this Value instance, an IllegalStateException is thrown. In this case a new Value instance must be acquired in order to successfully call getLong.
A RepositoryException is thrown if another error occurs.
long representation of this value.ValueFormatException - if conversion to an long is not possible.java.lang.IllegalStateException - if getStream has previously been called on this Value instance.RepositoryException - if another error occurs.
double getDouble()
throws ValueFormatException,
java.lang.IllegalStateException,
RepositoryException
double representation of this value.
If this value cannot be converted to a double, a ValueFormatException is thrown.
If getStream has previously been called on this Value instance, an IllegalStateException is thrown. In this case a new Value instance must be acquired in order to successfully call getDouble.
A RepositoryException is thrown if another error occurs.
double representation of this value.ValueFormatException - if conversion to a double is not possible.java.lang.IllegalStateException - if getStream has previously been called on this Value instance.RepositoryException - if another error occurs.
java.util.Calendar getDate()
throws ValueFormatException,
java.lang.IllegalStateException,
RepositoryException
Calendar representation of this value.
The object returned is a copy of the stored value, so changes to it are not reflected in internal storage.
If this value cannot be converted to a Calendar, a ValueFormatException is thrown.
If getStream has previously been called on this Value instance, an IllegalStateException is thrown. In this case a new Value instance must be acquired in order to successfully call getDate.
A RepositoryException is thrown if another error occurs.
Calendar representation of this value.ValueFormatException - if conversion to a Calendar is not possible.java.lang.IllegalStateException - if getStream has previously been called on this Value instance.RepositoryException - if another error occurs.
boolean getBoolean()
throws ValueFormatException,
java.lang.IllegalStateException,
RepositoryException
Boolean representation of this value.
If this value cannot be converted to a Boolean, a ValueFormatException is thrown.
If getStream has previously been called on this Value instance, an IllegalStateException is thrown. In this case a new Value instance must be acquired in order to successfully call getBoolean.
A RepositoryException is thrown if another error occurs.
Boolean representation of this value.ValueFormatException - if conversion to a Boolean is not possible.java.lang.IllegalStateException - if getStream has previously been called on this Value instance.RepositoryException - if another error occurs.int getType()
type of this Value. One of:
PropertyType.STRINGPropertyType.DATEPropertyType.BINARYPropertyType.DOUBLEPropertyType.LONGPropertyType.BOOLEANPropertyType.NAMEPropertyType.PATHPropertyType.REFERENCEPropertyType.
The type returned is that which was set at property creation.
Copyright © 2004-2005 Day Software Management AG. All Rights Reserved.