|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
A generic holder for the value of a property. A 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.
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.
Method Summary | |
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 . |
Method Detail |
public 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.public 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.public long getLong() throws ValueFormatException, 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.public 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.public 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.public 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.public int getType()
type
of this Value
.
One of:
PropertyType.STRING
PropertyType.DATE
PropertyType.BINARY
PropertyType.DOUBLE
PropertyType.LONG
PropertyType.BOOLEAN
PropertyType.NAME
PropertyType.PATH
PropertyType.REFERENCE
PropertyType
.
The type returned is that which was set at property creation.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |