|
OSGi™ Service Platform Release 4 Version 4.2 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object info.dmtree.DmtData
public final class DmtData
An immutable data structure representing the contents of a leaf or interior
node. This structure represents only the value and the format property of the
node, all other properties (like MIME type) can be set and read using the
DmtSession
interface.
Different constructors are available to create nodes with different formats.
Nodes of null
format can be created using the static
NULL_VALUE
constant instance of this class.
FORMAT_RAW_BINARY
and FORMAT_RAW_STRING
enable the support
of future data formats. When using these formats, the actual format name is
specified as a String
. The application is responsible for the
proper encoding of the data according to the specified format.
Field Summary | |
---|---|
static int |
FORMAT_BASE64
The node holds an OMA DM b64 value. |
static int |
FORMAT_BINARY
The node holds an OMA DM bin value. |
static int |
FORMAT_BOOLEAN
The node holds an OMA DM bool value. |
static int |
FORMAT_DATE
The node holds an OMA DM date value. |
static int |
FORMAT_FLOAT
The node holds an OMA DM float value. |
static int |
FORMAT_INTEGER
The node holds an OMA DM int value. |
static int |
FORMAT_NODE
Format specifier of an internal node. |
static int |
FORMAT_NULL
The node holds an OMA DM null value. |
static int |
FORMAT_RAW_BINARY
The node holds raw protocol data encoded in binary format. |
static int |
FORMAT_RAW_STRING
The node holds raw protocol data encoded as String . |
static int |
FORMAT_STRING
The node holds an OMA DM chr value. |
static int |
FORMAT_TIME
The node holds an OMA DM time value. |
static int |
FORMAT_XML
The node holds an OMA DM xml value. |
static DmtData |
NULL_VALUE
Constant instance representing a leaf node of null format. |
Constructor Summary | |
---|---|
DmtData(boolean bool)
Create a DmtData instance of bool format
and set its value. |
|
DmtData(byte[] bytes)
Create a DmtData instance of bin format and
set its value. |
|
DmtData(byte[] bytes,
boolean base64)
Create a DmtData instance of bin or
b64 format and set its value. |
|
DmtData(float flt)
Create a DmtData instance of float format
and set its value. |
|
DmtData(int integer)
Create a DmtData instance of int format and
set its value. |
|
DmtData(java.lang.Object complex)
Create a DmtData instance of node format
with the given object value. |
|
DmtData(java.lang.String str)
Create a DmtData instance of chr format
with the given string value. |
|
DmtData(java.lang.String formatName,
byte[] data)
Create a DmtData instance in FORMAT_RAW_BINARY
format. |
|
DmtData(java.lang.String value,
int format)
Create a DmtData instance of the specified format and set
its value based on the given string. |
|
DmtData(java.lang.String formatName,
java.lang.String data)
Create a DmtData instance in FORMAT_RAW_STRING
format. |
Method Summary | |
---|---|
boolean |
equals(java.lang.Object obj)
Compares the specified object with this DmtData instance. |
byte[] |
getBase64()
Gets the value of a node with base 64 ( b64 ) format. |
byte[] |
getBinary()
Gets the value of a node with binary ( bin ) format. |
boolean |
getBoolean()
Gets the value of a node with boolean ( bool ) format. |
java.lang.String |
getDate()
Gets the value of a node with date format. |
float |
getFloat()
Gets the value of a node with float format. |
int |
getFormat()
Get the node's format, expressed in terms of type constants defined in this class. |
java.lang.String |
getFormatName()
Returns the format of this DmtData as String . |
int |
getInt()
Gets the value of a node with integer ( int ) format. |
java.lang.Object |
getNode()
Gets the complex data associated with an interior node ( node
format). |
byte[] |
getRawBinary()
Gets the value of a node in raw binary ( FORMAT_RAW_BINARY )
format. |
java.lang.String |
getRawString()
Gets the value of a node in raw String
(FORMAT_RAW_STRING ) format. |
int |
getSize()
Get the size of the data. |
java.lang.String |
getString()
Gets the value of a node with string ( chr ) format. |
java.lang.String |
getTime()
Gets the value of a node with time format. |
java.lang.String |
getXml()
Gets the value of a node with xml format. |
int |
hashCode()
Returns the hash code value for this DmtData instance. |
java.lang.String |
toString()
Gets the string representation of the DmtData . |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final int FORMAT_INTEGER
int
value.
public static final int FORMAT_FLOAT
float
value.
public static final int FORMAT_STRING
chr
value.
public static final int FORMAT_BOOLEAN
bool
value.
public static final int FORMAT_DATE
date
value.
public static final int FORMAT_TIME
time
value.
public static final int FORMAT_BINARY
bin
value. The value of the node
corresponds to the Java byte[]
type.
public static final int FORMAT_BASE64
b64
value. Like
FORMAT_BINARY
, this format is also represented by the Java
byte[]
type, the difference is only in the corresponding
OMA DM format.
public static final int FORMAT_XML
xml
value.
public static final int FORMAT_NULL
null
value. This corresponds to
the Java null
type.
public static final int FORMAT_NODE
DmtData(Object)
and
getNode()
). This value can be used by Java programs that
know a specific URI understands the associated Java type. This type is
further used as a return value of the MetaNode.getFormat()
method
for interior nodes.
public static final int FORMAT_RAW_STRING
String
. The
getFormatName()
method can be used to get the actual format
name.
public static final int FORMAT_RAW_BINARY
getFormatName()
method can be used to get the actual format
name.
public static final DmtData NULL_VALUE
null
format.
Constructor Detail |
---|
public DmtData(java.lang.String str)
DmtData
instance of chr
format
with the given string value. The null
string argument is
valid.
str
- the string value to setpublic DmtData(java.lang.Object complex)
DmtData
instance of node
format
with the given object value. The value represents complex data associated
with an interior node.
Certain interior nodes can support access to their subtrees through such complex values, making it simpler to retrieve or update all leaf nodes in a subtree.
The given value must be a non-null
immutable object.
complex
- the complex data object to setpublic DmtData(java.lang.String value, int format)
DmtData
instance of the specified format and set
its value based on the given string. Only the following string-based
formats can be created using this constructor:
FORMAT_STRING
- value can be any string
FORMAT_XML
- value must contain an XML fragment (the
validity is not checked by this constructor)
FORMAT_DATE
- value must be parseable to an ISO 8601
calendar date in complete representation, basic format (pattern
CCYYMMDD)
FORMAT_TIME
- value must be parseable to an ISO 8601 time
of day in either local time, complete representation, basic format
(pattern hhmmss) or Coordinated Universal Time, basic format
(pattern hhmmssZ)
null
string argument is only valid if the format is
string or XML.
value
- the string, XML, date or time value to setformat
- the format of the DmtData
instance to be
created, must be one of the formats specified above
java.lang.IllegalArgumentException
- if format
is not one of
the allowed formats, or value
is not a valid
string for the given format
java.lang.NullPointerException
- if a date or time is constructed and
value
is null
public DmtData(int integer)
DmtData
instance of int
format and
set its value.
integer
- the integer value to setpublic DmtData(float flt)
DmtData
instance of float
format
and set its value.
flt
- the float value to setpublic DmtData(boolean bool)
DmtData
instance of bool
format
and set its value.
bool
- the boolean value to setpublic DmtData(byte[] bytes)
DmtData
instance of bin
format and
set its value.
bytes
- the byte array to set, must not be null
java.lang.NullPointerException
- if bytes
is null
public DmtData(byte[] bytes, boolean base64)
DmtData
instance of bin
or
b64
format and set its value. The chosen format is
specified by the base64
parameter.
bytes
- the byte array to set, must not be null
base64
- if true
, the new instance will have
b64
format, if false
, it will have
bin
format
java.lang.NullPointerException
- if bytes
is null
public DmtData(java.lang.String formatName, java.lang.String data)
DmtData
instance in FORMAT_RAW_STRING
format. The data is provided encoded as a String
. The
actual data format is specified in formatName
. The
encoding used in data
must conform to this format.
formatName
- the name of the format, must not be null
data
- the data encoded according to the specified format, must not
be null
java.lang.NullPointerException
- if formatName
or
data
is null
public DmtData(java.lang.String formatName, byte[] data)
DmtData
instance in FORMAT_RAW_BINARY
format. The data is provided encoded as binary. The actual data format is
specified in formatName
. The encoding used in
data
must conform to this format.
formatName
- the name of the format, must not be null
data
- the data encoded according to the specified format, must not
be null
java.lang.NullPointerException
- if formatName
or
data
is null
Method Detail |
---|
public java.lang.String getString()
chr
) format.
DmtIllegalStateException
- if the format of the node is not stringpublic java.lang.String getDate()
DmtIllegalStateException
- if the format of the node is not datepublic java.lang.String getTime()
DmtIllegalStateException
- if the format of the node is not timepublic java.lang.String getXml()
xml
format.
DmtIllegalStateException
- if the format of the node is not
xml
public int getInt()
int
) format.
DmtIllegalStateException
- if the format of the node is not integerpublic float getFloat()
float
format.
DmtIllegalStateException
- if the format of the node is not
float
public boolean getBoolean()
bool
) format.
DmtIllegalStateException
- if the format of the node is not booleanpublic byte[] getBinary()
bin
) format.
DmtIllegalStateException
- if the format of the node is not binarypublic byte[] getRawBinary()
FORMAT_RAW_BINARY
)
format.
DmtIllegalStateException
- if the format of the node is not raw binarypublic java.lang.String getRawString()
String
(FORMAT_RAW_STRING
) format.
String
format
DmtIllegalStateException
- if the format of the node is not raw
String
public byte[] getBase64()
b64
) format.
DmtIllegalStateException
- if the format of the node is not base 64.public java.lang.Object getNode()
node
format).
Certain interior nodes can support access to their subtrees through complex values, making it simpler to retrieve or update all leaf nodes in the subtree.
DmtIllegalStateException
- if the format of the data is not
node
public int getFormat()
public java.lang.String getFormatName()
DmtData
as String
.
For the predefined data formats this is the OMA DM defined name of the
format. For FORMAT_RAW_STRING
and FORMAT_RAW_BINARY
this is the format specified when the object was created.
String
public int getSize()
FORMAT_STRING
, FORMAT_XML
, FORMAT_BINARY
,
FORMAT_BASE64
, FORMAT_RAW_STRING
, and
FORMAT_RAW_BINARY
: the length of the stored data, or 0 if
the data is null
FORMAT_INTEGER
and FORMAT_FLOAT
: 4
FORMAT_DATE
and FORMAT_TIME
: the length of the
date or time in its string representation
FORMAT_BOOLEAN
: 1
FORMAT_NODE
: -1 (unknown)
FORMAT_NULL
: 0
public java.lang.String toString()
DmtData
. This
method works for all formats.
For string format data - including FORMAT_RAW_STRING
- the
string value itself is returned, while for XML, date, time, integer,
float, boolean and node formats the string form of the value is returned.
Binary - including FORMAT_RAW_BINARY
- and base64 data is
represented by two-digit hexadecimal numbers for each byte separated by
spaces. The NULL_VALUE
data has the string form of
"null
". Data of string or XML format containing the Java
null
value is represented by an empty string.
toString
in class java.lang.Object
DmtData
instancepublic boolean equals(java.lang.Object obj)
DmtData
instance.
Two DmtData
objects are considered equal if their format
is the same, and their data (selected by the format) is equal.
In case of FORMAT_RAW_BINARY
and FORMAT_RAW_STRING
the textual name of the data format - as returned by
getFormatName()
- must be equal as well.
equals
in class java.lang.Object
obj
- the object to compare with this DmtData
DmtData
as this objectpublic int hashCode()
DmtData
instance. The
hash code is calculated based on the data (selected by the format) of
this object.
hashCode
in class java.lang.Object
|
OSGi™ Service Platform Release 4 Version 4.2 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |