public final class StatusVariable
extends java.lang.Object
StatusVariable
object represents the value of a status
variable taken with a certain collection method at a certain point of time.
The type of the StatusVariable
can be int
,
float
, boolean
or String
.
A StatusVariable
is identified by an ID string that is unique
within the scope of a Monitorable
. The ID must be a non-
null
, non-empty string that conforms to the "symbolic-name"
definition in the OSGi core specification. This means that only the
characters [-_.a-zA-Z0-9] may be used. The length of the ID must not exceed
32 bytes when UTF-8 encoded.
Modifier and Type | Field and Description |
---|---|
private boolean |
booleanData |
private int |
cm |
static int |
CM_CC
Constant for identifying 'Cumulative Counter' data collection method.
|
static int |
CM_DER
Constant for identifying 'Discrete Event Registration' data collection
method.
|
static int |
CM_GAUGE
Constant for identifying 'Gauge' data collection method.
|
static int |
CM_SI
Constant for identifying 'Status Inspection' data collection method.
|
private float |
floatData |
private java.lang.String |
id |
private int |
intData |
(package private) static int |
MAX_ID_LENGTH |
private java.lang.String |
stringData |
(package private) static java.lang.String |
SYMBOLIC_NAME_CHARACTERS |
private java.util.Date |
timeStamp |
private int |
type |
static int |
TYPE_BOOLEAN
Constant for identifying
boolean data type. |
static int |
TYPE_FLOAT
Constant for identifying
float data type. |
static int |
TYPE_INTEGER
Constant for identifying
int data type. |
static int |
TYPE_STRING
Constant for identifying
String data type. |
Constructor and Description |
---|
StatusVariable(java.lang.String id,
int cm,
boolean data)
Constructor for a
StatusVariable of boolean
type. |
StatusVariable(java.lang.String id,
int cm,
float data)
Constructor for a
StatusVariable of float
type. |
StatusVariable(java.lang.String id,
int cm,
int data)
Constructor for a
StatusVariable of int
type. |
StatusVariable(java.lang.String id,
int cm,
java.lang.String data)
Constructor for a
StatusVariable of String
type. |
Modifier and Type | Method and Description |
---|---|
private static void |
checkId(java.lang.String id,
java.lang.String idName) |
private static boolean |
containsValidChars(java.lang.String name) |
boolean |
equals(java.lang.Object obj)
Compares the specified object with this
StatusVariable . |
private boolean |
equals(java.lang.Object o1,
java.lang.Object o2) |
boolean |
getBoolean()
Returns the
StatusVariable value if its type is
boolean . |
int |
getCollectionMethod()
Returns the collection method of this
StatusVariable . |
float |
getFloat()
Returns the
StatusVariable value if its type is
float . |
java.lang.String |
getID()
Returns the ID of this
StatusVariable . |
int |
getInteger()
Returns the
StatusVariable value if its type is
int . |
java.lang.String |
getString()
Returns the
StatusVariable value if its type is
String . |
java.util.Date |
getTimeStamp()
Returns the timestamp associated with the
StatusVariable . |
int |
getType()
Returns information on the data type of this
StatusVariable . |
int |
hashCode()
Returns the hash code value for this
StatusVariable . |
private int |
hashCode(java.lang.Object o) |
private void |
setCommon(java.lang.String id,
int cm) |
java.lang.String |
toString()
Returns a
String representation of this
StatusVariable . |
public static final int TYPE_INTEGER
int
data type.public static final int TYPE_FLOAT
float
data type.public static final int TYPE_STRING
String
data type.public static final int TYPE_BOOLEAN
boolean
data type.public static final int CM_CC
public static final int CM_DER
public static final int CM_GAUGE
public static final int CM_SI
static final java.lang.String SYMBOLIC_NAME_CHARACTERS
static final int MAX_ID_LENGTH
private java.lang.String id
private java.util.Date timeStamp
private int cm
private int type
private int intData
private float floatData
private java.lang.String stringData
private boolean booleanData
public StatusVariable(java.lang.String id, int cm, int data)
StatusVariable
of int
type.id
- the identifier of the StatusVariable
cm
- the collection method, one of the CM_
constantsdata
- the int
value of the
StatusVariable
java.lang.IllegalArgumentException
- if the given id
is not a valid StatusVariable
name, or if
cm
is not one of the collection method constantsjava.lang.NullPointerException
- if the id
parameter is null
public StatusVariable(java.lang.String id, int cm, float data)
StatusVariable
of float
type.id
- the identifier of the StatusVariable
cm
- the collection method, one of the CM_
constantsdata
- the float
value of the
StatusVariable
java.lang.IllegalArgumentException
- if the given id
is not a valid StatusVariable
name, or if
cm
is not one of the collection method constantsjava.lang.NullPointerException
- if the id
parameter
is null
public StatusVariable(java.lang.String id, int cm, boolean data)
StatusVariable
of boolean
type.id
- the identifier of the StatusVariable
cm
- the collection method, one of the CM_
constantsdata
- the boolean
value of the
StatusVariable
java.lang.IllegalArgumentException
- if the given id
is not a valid StatusVariable
name, or if
cm
is not one of the collection method constantsjava.lang.NullPointerException
- if the id
parameter
is null
public StatusVariable(java.lang.String id, int cm, java.lang.String data)
StatusVariable
of String
type.id
- the identifier of the StatusVariable
cm
- the collection method, one of the CM_
constantsdata
- the String
value of the
StatusVariable
, can be null
java.lang.IllegalArgumentException
- if the given id
is not a valid StatusVariable
name, or if
cm
is not one of the collection method constantsjava.lang.NullPointerException
- if the id
parameter
is null
public java.lang.String getID()
StatusVariable
. The ID is unique
within the scope of a Monitorable
.StatusVariable
public int getType()
StatusVariable
.TYPE_
constants indicating the type of
this StatusVariable
public java.util.Date getTimeStamp()
StatusVariable
.
The timestamp is stored when the StatusVariable
instance is
created, generally during the Monitorable.getStatusVariable(java.lang.String)
method call.StatusVariable
value was
queried, cannot be null
public java.lang.String getString() throws java.lang.IllegalStateException
StatusVariable
value if its type is
String
.StatusVariable
value as a String
java.lang.IllegalStateException
- if the type of the
StatusVariable
is not String
public int getInteger() throws java.lang.IllegalStateException
StatusVariable
value if its type is
int
.StatusVariable
value as an int
java.lang.IllegalStateException
- if the type of this
StatusVariable
is not int
public float getFloat() throws java.lang.IllegalStateException
StatusVariable
value if its type is
float
.StatusVariable
value as a float
java.lang.IllegalStateException
- if the type of this
StatusVariable
is not float
public boolean getBoolean() throws java.lang.IllegalStateException
StatusVariable
value if its type is
boolean
.StatusVariable
value as a boolean
java.lang.IllegalStateException
- if the type of this
StatusVariable
is not boolean
public int getCollectionMethod()
StatusVariable
. See
section 3.3 b) in [ETSI TS 132 403]CM_
constantspublic boolean equals(java.lang.Object obj)
StatusVariable
.
Two StatusVariable
objects are considered equal if their
full path, collection method and type are identical, and the data
(selected by their type) is equal.equals
in class java.lang.Object
obj
- the object to compare with this StatusVariable
true
if the argument represents the same
StatusVariable
as this objectpublic int hashCode()
StatusVariable
. The
hash code is calculated based on the full path, collection method and
value of the StatusVariable
.hashCode
in class java.lang.Object
public java.lang.String toString()
String
representation of this
StatusVariable
. The returned String
contains the full path, collection method, timestamp, type and value
parameters of the StatusVariable
in the following format:
StatusVariable(<path>, <cm>, <timestamp>, <type>, <value>)The collection method identifiers used in the string representation are "CC", "DER", "GAUGE" and "SI" (without the quotes). The format of the timestamp is defined by the
Date.toString
method, while the
type is identified by one of the strings "INTEGER", "FLOAT", "STRING" and
"BOOLEAN". The final field contains the string representation of the
value of the status variable.toString
in class java.lang.Object
String
representation of this
StatusVariable
private void setCommon(java.lang.String id, int cm) throws java.lang.IllegalArgumentException, java.lang.NullPointerException
java.lang.IllegalArgumentException
java.lang.NullPointerException
private boolean equals(java.lang.Object o1, java.lang.Object o2)
private int hashCode(java.lang.Object o)
private static void checkId(java.lang.String id, java.lang.String idName) throws java.lang.IllegalArgumentException, java.lang.NullPointerException
java.lang.IllegalArgumentException
java.lang.NullPointerException
private static boolean containsValidChars(java.lang.String name)