Interface ZCLSimpleTypeDescription
- All Superinterfaces:
ZCLDataTypeDescription
- All Known Implementing Classes:
ZigBeeAttributeID, ZigBeeBACnet, ZigBeeBitmap16, ZigBeeBitmap24, ZigBeeBitmap32, ZigBeeBitmap40, ZigBeeBitmap48, ZigBeeBitmap56, ZigBeeBitmap64, ZigBeeBitmap8, ZigBeeBoolean, ZigBeeCharacterString, ZigBeeClusterID, ZigBeeDate, ZigBeeEnumeration16, ZigBeeEnumeration8, ZigBeeFloatingDouble, ZigBeeFloatingSemi, ZigBeeFloatingSingle, ZigBeeGeneralData16, ZigBeeGeneralData24, ZigBeeGeneralData32, ZigBeeGeneralData40, ZigBeeGeneralData48, ZigBeeGeneralData56, ZigBeeGeneralData64, ZigBeeGeneralData8, ZigBeeIEEE_ADDRESS, ZigBeeLongCharacterString, ZigBeeLongOctetString, ZigBeeOctetString, ZigBeeSecurityKey128, ZigBeeSignedInteger16, ZigBeeSignedInteger24, ZigBeeSignedInteger32, ZigBeeSignedInteger40, ZigBeeSignedInteger48, ZigBeeSignedInteger56, ZigBeeSignedInteger64, ZigBeeSignedInteger8, ZigBeeTimeOfDay, ZigBeeUnsignedInteger16, ZigBeeUnsignedInteger24, ZigBeeUnsignedInteger32, ZigBeeUnsignedInteger40, ZigBeeUnsignedInteger48, ZigBeeUnsignedInteger56, ZigBeeUnsignedInteger64, ZigBeeUnsignedInteger8, ZigBeeUTCTime
This interface is used for representing any of the simple ZigBee Data Types
defined in the ZCL.
The interface extends the ZCLDataTypeDescription by providing
serialize and deserialize methods to marshal and unmarshal the data into the
ZigBeeDataInput and from ZigBeeDataOutput streams.
Related documentation: [1] ZigBee Cluster Library specification, Document 075123r04ZB, May 29, 2012.
- Author:
- $Id: a24d566113df1141a80fd789c3a37c7ec5bc5833 $
-
Method Summary
Modifier and TypeMethodDescriptionDeserializes a value from the passedZigBeeDataInputstream.voidserialize(ZigBeeDataOutput os, Object value) Serializes a ZigBee data type into aZigBeeDataOutputstream.Methods inherited from interface ZCLDataTypeDescription
getId, getJavaDataType, getName, isAnalog
-
Method Details
-
serialize
Serializes a ZigBee data type into aZigBeeDataOutputstream. An implementation of this method must throw anIllegalArgumentExceptionif the passed value does not belong to the expected class or its value exceeds the possible values allowed (in terms of range or length).An implementation of this method must interpret (where it makes sense) a
nullvalue as the request to serialize the so called Invalid Value.- Parameters:
os- aZigBeeDataOutputstream where to the passed value will be appended. This parameter cannot benull. IfnullaNullPointerExceptionmust be thrown.value- The value that have to be serialized on the output stream. If null is passed this method outputs on the stream the ZigBee invalid value related the specific data type. If the data type do not allow any invalid value and the passed value is null anIllegalArgumentExceptionis thrown.- Throws:
IOException- If an I/O error occurs while writing on theZigBeeDataOutput. TheEOFExceptionmay be thrown if there is no more space on the data output for serializing the passed value.NullPointerException- IfZigBeeDataOutputparameter isnull.IllegalArgumentException- If the passed value parameter does not belong to the expected class or its value exceeds the possible values allowed (range or length).
-
deserialize
Deserializes a value from the passedZigBeeDataInputstream.- Parameters:
is- theZigBeeDataInputfrom where the value of data type is read from.- Returns:
- An object that represents the deserialized value of data. Returns
nullif the read value represents the Invalid Value for the specific ZigBee data type. - Throws:
NullPointerException- IfZigBeeDataInputparameter isnull.IOException- If an I/O error occurs while reading theZigBeeDataInput. AnEOFExceptionis thrown if the data input stream end is reached while deserializing the data type.
-