|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--sim.toolkit.ViewHandler | +--sim.toolkit.ProactiveResponseHandler
The ProactiveResponseHandler class contains basic methods to handle the Terminal
Response data field. This class will be used by the Toolkit applet to
get the response to the Proactive commands. No constructor is available for
the Toolkit applet. The ProactiveResponseHandler class is a Temporary JCRE
Entry Point Object. The only way to get a ProactiveResponseHandler
reference is through the getTheHandler()
static method.
Example of use:
private byte[] data;
data = new byte[32]; // build a buffer
ProactiveResponseHandler ProRespHdlr; // get the system instance
ProRespHdlr = ProactiveResponseHandler.getTheHandler();
// get General Result
byte result = ProRespHdlr.getGeneralResult();
respHdlr.findTLV(TAG_DEVICE_IDENTITIES, 1); // look for Device Identities
byte sourceDev = ProRespHdlr.getValueByte((short)0); // read Device Identities
byte destinDev = ProRespHdlr.getValueByte((short)1);
// look for Text String element
if (ProRespHdlr.findTLV(TAG_TEXT_STRING, (byte)1) == TLV_FOUND_CR_SET) {
if ((short len = ProRespHdlr.getValueLength()) > 1) {
// not empty string: to be copied
ProRespHdlr.copyValue((short)1, data, (short)0, (short)(len - 1));
}
}
ViewHandler
,
ProactiveHandler
,
ToolkitException
Method Summary | |
short |
copyAdditionalInformation(byte[] dstBuffer,
short dstOffset,
short dstLength)
Copies a part of the additional information field from the first Result TLV element of the current response data field. |
short |
copyTextString(byte[] dstBuffer,
short dstOffset)
Copies the text string value from the first Text String TLV element of the current response data field. |
short |
getAdditionalInformationLength()
Returns the length of the additional information field from the first Result TLV element of the current response data field. |
byte |
getGeneralResult()
Returns the general result byte of the Proactive command. |
byte |
getItemIdentifier()
Returns the item identifier byte value from the first Item Identifier TLV element of the current response data field. |
byte |
getTextStringCodingScheme()
Returns the data coding scheme byte from the first Text String TLV element of the current response data field. |
short |
getTextStringLength()
Returns the text string length value from the first Text String TLV element of the current response data field. |
static ProactiveResponseHandler |
getTheHandler()
Returns the single system instance of the ProactiveResponseHandler class. |
Methods inherited from class sim.toolkit.ViewHandler |
compareValue, copy, copyValue, findAndCompareValue, findAndCompareValue, findAndCopyValue, findAndCopyValue, findTLV, getLength, getValueByte, getValueLength |
Methods inherited from class java.lang.Object |
equals |
Method Detail |
public static ProactiveResponseHandler getTheHandler() throws ToolkitException
ToolkitException
- with the following reason codes: HANDLER_NOT_AVAILABLE
if the handler is busy.public byte getGeneralResult() throws ToolkitException
ToolkitException
- with the following reason codes: UNAVAILABLE_ELEMENT
in case of unavailable Result TLV element
OUT_OF_TLV_BOUNDARIES
if the general result byte is missing in the Result Simple TLVpublic short getAdditionalInformationLength() throws ToolkitException
ToolkitException
- with the following reason codes: UNAVAILABLE_ELEMENT
in case of unavailable Result TLV elementpublic short copyAdditionalInformation(byte[] dstBuffer, short dstOffset, short dstLength) throws java.lang.NullPointerException, java.lang.ArrayIndexOutOfBoundsException, ToolkitException
Notes:
dstOffset
or dstLength
parameter is negative an ArrayIndexOutOfBoundsException
exception is thrown and no copy is performed.
dstOffset+dstLength
is greater than dstBuffer.length
, the length
of the dstBuffer
array an ArrayIndexOutOfBoundsException
exception is thrown
and no copy is performed.
dstBuffer
- a reference to the destination bufferdstOffset
- the position in the destination bufferdstLength
- the data length to be copieddstOffset+dstLength
java.lang.NullPointerException
- if dstBuffer
is null
java.lang.ArrayIndexOutOfBoundsException
- if copyAdditionalInformation would cause access of data outside array bounds.ToolkitException
- with the following reason codes: UNAVAILABLE_ELEMENT
in case of unavailable Result TLV element
OUT_OF_TLV_BOUNDARIES
if dstLength
is greater than
the value field of the available TLVpublic byte getItemIdentifier() throws ToolkitException
ToolkitException
- with the following reason codes: UNAVAILABLE_ELEMENT
in case of unavailable Item Identifier TLV element
OUT_OF_TLV_BOUNDARIES
if the item identifier byte is missing in the Item Identifier Simple TLVpublic short getTextStringLength() throws ToolkitException
ToolkitException
- with the following reason codes: UNAVAILABLE_ELEMENT
in case of unavailable Text String TLV elementpublic byte getTextStringCodingScheme() throws ToolkitException
ToolkitException
- with the following reason codes: UNAVAILABLE_ELEMENT
in case of unavailable Text String TLV element
OUT_OF_TLV_BOUNDARIES
if the Text String TLV is present with a length
of 0 (no DCS byte)public short copyTextString(byte[] dstBuffer, short dstOffset) throws java.lang.NullPointerException, java.lang.ArrayIndexOutOfBoundsException, ToolkitException
dstBuffer
- a reference to the destination bufferdstOffset
- the position in the destination bufferdstOffset
+ length of the copied valuejava.lang.NullPointerException
- if dstBuffer
is null
java.lang.ArrayIndexOutOfBoundsException
- if dstOffset or dstOffset + (length of the TextString to be copied,
without the Data Coding Scheme included)
, as specified for the returned value, would cause access outside array bounds.ToolkitException
- with the following reason codes: UNAVAILABLE_ELEMENT
in case of unavailable Text String TLV element
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |