Class DataSM
- java.lang.Object
-
- com.opencloud.slee.resources.smpp.pdu.ByteData
-
- com.opencloud.slee.resources.smpp.pdu.PDU
-
- com.opencloud.slee.resources.smpp.pdu.Request
-
- com.opencloud.slee.resources.smpp.pdu.DataSM
-
- All Implemented Interfaces:
com.opencloud.util.FastSerializable
,Externalizable
,Serializable
public class DataSM extends Request
Represents DATA_SM request PDU- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class com.opencloud.slee.resources.smpp.pdu.PDU
commandID, commandStatus, MIN_SIZE, sequenceNumber
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
bodyEquals(PDU pdu)
Compares the body of given PDU with the body (not including header or TLVs) of this PDU for equality.protected void
bodyFromBuffer(ByteBuffer buf)
Read PDU body (not including header or TLVs) from a ByteBuffer.protected int
bodyHashCode()
Get the hash code value of PDU body (not including header or TLVs).protected int
bodySize()
Return size (in bytes) of PDU body (not including header or TLVs).protected void
bodyToBuffer(ByteBuffer buf)
Write PDU body (not including header or TLVs) to a ByteBuffer.protected String
bodyToString()
Response
createResponse(int status)
Create a response of the appropriate type.byte
getDataCoding()
Address
getDestAddress()
byte
getEsmClass()
byte
getRegisteredDelivery()
String
getServiceType()
Address
getSourceAddress()
void
setDataCoding(byte dataCoding)
void
setDestAddress(Address address)
void
setEsmClass(byte esmClass)
void
setRegisteredDelivery(byte registeredDelivery)
void
setServiceType(String type)
void
setSourceAddress(Address address)
-
Methods inherited from class com.opencloud.slee.resources.smpp.pdu.PDU
addTLV, equals, fromBuffer, fromStream, getAllTLVs, getCommandID, getCommandLength, getCommandStatus, getSequenceNumber, getTLV, hashCode, hasTLV, headerEquals, headerFromBuffer, headerHashCode, headerSize, headerToBuffer, headerToString, readExternal, setCommandID, setCommandStatus, setSequenceNumber, size, tlvEquals, tlvFromBuffer, tlvHashCode, tlvSize, tlvToBuffer, tlvToString, toBuffer, toStream, toString, writeExternal
-
Methods inherited from class com.opencloud.slee.resources.smpp.pdu.ByteData
checkCString, checkCString, checkDate, decodeUnsigned, encodeUnsigned, equalCStrings, getCString, getCString, getCStringByteArray, getCStringHashCode, isNullOrEmptyCString, printAsHex, putCString
-
-
-
-
Constructor Detail
-
DataSM
public DataSM()
-
DataSM
public DataSM(DataInput in) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getServiceType
public String getServiceType()
-
setServiceType
public void setServiceType(String type) throws SmppStringLengthException
- Throws:
SmppStringLengthException
-
getSourceAddress
public Address getSourceAddress()
-
setSourceAddress
public void setSourceAddress(Address address) throws SmppStringLengthException
- Throws:
SmppStringLengthException
-
getDestAddress
public Address getDestAddress()
-
setDestAddress
public void setDestAddress(Address address) throws SmppStringLengthException
- Throws:
SmppStringLengthException
-
getEsmClass
public byte getEsmClass()
-
setEsmClass
public void setEsmClass(byte esmClass)
-
getRegisteredDelivery
public byte getRegisteredDelivery()
-
setRegisteredDelivery
public void setRegisteredDelivery(byte registeredDelivery)
-
getDataCoding
public byte getDataCoding()
-
setDataCoding
public void setDataCoding(byte dataCoding)
-
bodyToBuffer
protected void bodyToBuffer(ByteBuffer buf) throws BufferOverflowException
Description copied from class:PDU
Write PDU body (not including header or TLVs) to a ByteBuffer. Subclasses MUST override this if they have any additional fields in their body. Fields must be written in big-endian byte order (the default with ByteBuffer anyway).- Overrides:
bodyToBuffer
in classPDU
- Throws:
BufferOverflowException
-
bodyFromBuffer
protected void bodyFromBuffer(ByteBuffer buf) throws BufferUnderflowException, InvalidPDUFieldException
Description copied from class:PDU
Read PDU body (not including header or TLVs) from a ByteBuffer. Subclasses MUST override this if they have any additional fields in their body. Fields are read in big-endian byte order (the default with ByteBuffer anyway).- Overrides:
bodyFromBuffer
in classPDU
- Throws:
BufferUnderflowException
InvalidPDUFieldException
-
bodyToString
protected String bodyToString()
- Overrides:
bodyToString
in classPDU
-
bodySize
protected int bodySize()
Description copied from class:PDU
Return size (in bytes) of PDU body (not including header or TLVs). Subclasses MUST override this if they have any additional fields in their body, so that PDU lengths will be calculated correctly.
-
bodyEquals
protected boolean bodyEquals(PDU pdu)
Description copied from class:PDU
Compares the body of given PDU with the body (not including header or TLVs) of this PDU for equality. Subclasses MUST override this if they have any additional fields in their body, so that PDUs comparison will be performed correctly.- Overrides:
bodyEquals
in classPDU
-
bodyHashCode
protected int bodyHashCode()
Description copied from class:PDU
Get the hash code value of PDU body (not including header or TLVs). Subclasses MUST override this if they have any additional fields in their body, so that PDU hash code will be calculated correctly.- Overrides:
bodyHashCode
in classPDU
-
createResponse
public Response createResponse(int status)
Description copied from class:Request
Create a response of the appropriate type. Subclasses override to return correct type. Implementations MUST set the response sequence number to be the same as the request sequence number.- Specified by:
createResponse
in classRequest
- Parameters:
status
- the value for the responses' command_status field- Returns:
- the response corresponding to this request, or null if there is no appropriate response type (eg. outbind, alert_notification).
-
-