public class NXCPMessage extends Object
Modifier and Type | Field and Description |
---|---|
static int |
ENCRYPTION_HEADER_SIZE |
static int |
HEADER_SIZE |
static int |
MF_BINARY |
static int |
MF_CONTROL |
static int |
MF_DONT_ENCRYPT |
static int |
MF_END_OF_FILE |
static int |
MF_END_OF_SEQUENCE |
static int |
MF_REVERSE_ORDER |
Constructor and Description |
---|
NXCPMessage(byte[] nxcpMessage,
EncryptionContext ectx)
Create NXCPMessage from binary NXCP message
|
NXCPMessage(int msgCode) |
NXCPMessage(int msgCode,
long msgId) |
Modifier and Type | Method and Description |
---|---|
byte[] |
createNXCPMessage()
Create binary NXCP message
|
NXCPMessageField |
findField(long fieldId)
Find field by ID
|
byte[] |
getBinaryData()
Get data of raw message.
|
long |
getControlData() |
byte[] |
getFieldAsBinary(long fieldId)
Get field as byte array
|
boolean |
getFieldAsBoolean(long fieldId)
Get field as boolean
|
Date |
getFieldAsDate(long fieldId)
Get field as date
|
Double |
getFieldAsDouble(long fieldId)
Get field as double
|
InetAddress |
getFieldAsInetAddress(long fieldId)
Get field as InetAddress
|
InetAddressEx |
getFieldAsInetAddressEx(long fieldId)
Get field as InetAddressEx
|
short |
getFieldAsInt16(long fieldId)
Get field as 16 bit integer
|
int |
getFieldAsInt32(long fieldId)
Get field as 32 bit integer
|
long |
getFieldAsInt64(long fieldId)
Get field as 64 bit integer
|
String |
getFieldAsString(long fieldId)
Get field as string
|
long[] |
getFieldAsUInt32Array(long fieldId)
Get field as array of 32 bit integers
|
Long[] |
getFieldAsUInt32ArrayEx(long fieldId)
Get field as array of 32 bit integers
|
UUID |
getFieldAsUUID(long fieldId)
Get field as UUID (GUID)
|
int |
getMessageCode() |
long |
getMessageId() |
long |
getTimestamp() |
boolean |
isBinaryMessage()
Return true if message is a raw message
|
boolean |
isControlMessage()
Return true if message is a control message
|
boolean |
isEncryptionDisabled()
Return true if message has "don't encrypt" flag set
|
boolean |
isEndOfFile()
Return true if message has "end of file" flag set
|
boolean |
isEndOfSequence()
Return true if message has "end of sequence" flag set
|
void |
setBinaryData(byte[] binaryData)
Set data for raw message.
|
void |
setBinaryMessage(boolean isRaw)
Set or clear raw (binary) message flag
|
void |
setControl(boolean isControl)
Set or clear control message flag
|
void |
setControlData(long controlData) |
void |
setEncryptionDisabled(boolean disabled)
Set "don't encrypt" message flag
|
void |
setEndOfFile(boolean isEOF)
Set end of file message flag
|
void |
setEndOfSequence(boolean isEOS)
Set end of sequence message flag
|
void |
setField(long fieldId,
boolean value)
Set field of type INT16 to 1 if value is true and 0 otherwise.
|
void |
setField(long fieldId,
byte[] value)
Set field of BINARY type (array of bytes)
|
void |
setField(long fieldId,
Date value)
Set INT64 field from Date object to number of seconds since epoch.
|
void |
setField(long fieldId,
Double value)
Set field of DOUBLE type
|
void |
setField(long fieldId,
InetAddress value)
Set field of INETADDR type
|
void |
setField(long fieldId,
InetAddressEx value)
Set field of INETADDR type
|
void |
setField(long fieldId,
long[] value)
Set field of BINARY type (array of integers)
|
void |
setField(long fieldId,
Long[] value)
Set field of BINARY type (array of integers)
|
void |
setField(long fieldId,
String value)
Set field of STRING type
|
void |
setField(long fieldId,
UUID value)
Set field of BINARY type to GUID value (byte array of length 16).
|
void |
setField(NXCPMessageField src)
Set field as copy of another field
|
void |
setFieldInt16(long fieldId,
int value)
Set field of type INT16
|
void |
setFieldInt32(long fieldId,
int value)
Set field of type INT32
|
void |
setFieldInt64(long fieldId,
long value)
Set field of type INT64
|
void |
setMessageCode(int msgCode) |
void |
setMessageId(long msgId) |
void |
setTimestamp(long timestamp) |
String |
toString() |
public static final int HEADER_SIZE
public static final int ENCRYPTION_HEADER_SIZE
public static final int MF_BINARY
public static final int MF_END_OF_FILE
public static final int MF_DONT_ENCRYPT
public static final int MF_END_OF_SEQUENCE
public static final int MF_REVERSE_ORDER
public static final int MF_CONTROL
public NXCPMessage(int msgCode)
msgCode
- public NXCPMessage(int msgCode, long msgId)
msgCode
- msgId
- public NXCPMessage(byte[] nxcpMessage, EncryptionContext ectx) throws IOException, NXCPException
nxcpMessage
- ectx
- IOException
NXCPException
public int getMessageCode()
public void setMessageCode(int msgCode)
msgCode
- the msgCode to setpublic long getMessageId()
public void setMessageId(long msgId)
msgId
- the msgId to setpublic long getTimestamp()
public void setTimestamp(long timestamp)
timestamp
- the timestamp to setpublic NXCPMessageField findField(long fieldId)
fieldId
- variable Id to findpublic void setField(NXCPMessageField src)
src
- source fieldpublic void setField(long fieldId, byte[] value)
fieldId
- value
- public void setField(long fieldId, long[] value)
fieldId
- value
- public void setField(long fieldId, Long[] value)
fieldId
- value
- public void setField(long fieldId, String value)
fieldId
- value
- public void setField(long fieldId, Double value)
fieldId
- value
- public void setField(long fieldId, InetAddress value)
fieldId
- value
- public void setField(long fieldId, InetAddressEx value)
fieldId
- value
- public void setField(long fieldId, UUID value)
fieldId
- value
- public void setFieldInt64(long fieldId, long value)
fieldId
- value
- public void setFieldInt32(long fieldId, int value)
fieldId
- value
- public void setFieldInt16(long fieldId, int value)
fieldId
- value
- public void setField(long fieldId, boolean value)
fieldId
- value
- public void setField(long fieldId, Date value)
fieldId
- field IDvalue
- Date object (can be null)public byte[] getFieldAsBinary(long fieldId)
fieldId
- public String getFieldAsString(long fieldId)
fieldId
- public Double getFieldAsDouble(long fieldId)
fieldId
- public short getFieldAsInt16(long fieldId)
fieldId
- public int getFieldAsInt32(long fieldId)
fieldId
- public long getFieldAsInt64(long fieldId)
fieldId
- public InetAddress getFieldAsInetAddress(long fieldId)
fieldId
- public InetAddressEx getFieldAsInetAddressEx(long fieldId)
fieldId
- public UUID getFieldAsUUID(long fieldId)
fieldId
- public long[] getFieldAsUInt32Array(long fieldId)
fieldId
- public Long[] getFieldAsUInt32ArrayEx(long fieldId)
fieldId
- public boolean getFieldAsBoolean(long fieldId)
fieldId
- public Date getFieldAsDate(long fieldId)
fieldId
- public byte[] createNXCPMessage() throws IOException
IOException
public byte[] getBinaryData()
public void setBinaryData(byte[] binaryData)
binaryData
- public boolean isBinaryMessage()
public void setBinaryMessage(boolean isRaw)
isRaw
- public boolean isControlMessage()
public void setControl(boolean isControl)
isControl
- true to set control message flagpublic boolean isEndOfFile()
public void setEndOfFile(boolean isEOF)
isEOF
- true to set end of file message flagpublic boolean isEndOfSequence()
public void setEndOfSequence(boolean isEOS)
isEOS
- true to set end of sequence message flagpublic boolean isEncryptionDisabled()
public void setEncryptionDisabled(boolean disabled)
disabled
- true to set "don't encrypt" message flagpublic long getControlData()
public void setControlData(long controlData)
controlData
- the controlData to setCopyright © 2016. All rights reserved.