uicc.hci.services.cardemulation
Interface CardEmulationMessage

All Superinterfaces:
HCIMessage

public interface CardEmulationMessage
extends HCIMessage

The CardEmulationMessage offers specialized methods to generate card emulation commands or events.


Field Summary
static byte PARAM_ID_TYPE_A_CARD_APPLICATION_DATA
          The historical bytes as defined in ISO/IEC 14443-4 for type A
static byte PARAM_ID_TYPE_A_CARD_ATQA
          Pre-formatted ATQA; byte 1 shall contain b8..1, byte 2 b16..9 of the ATQA coded as defined in ISO/IEC 14443- 3 [6] for type A
static byte PARAM_ID_TYPE_A_CARD_CID_SUPPORT
          support for CID as defined ISO/IEC 14443-4
static byte PARAM_ID_TYPE_A_CARD_CLT_SUPPORT
          Support of tunneling mode for ISO/IEC 14443-4 [7] non compliant protocols
static byte PARAM_ID_TYPE_A_CARD_DATARATE_MAX
          Maximum data rate supported
static byte PARAM_ID_TYPE_A_CARD_FWI_SFGI
          Frame waiting time and Start-up frame guard time as defined in ISO/IEC 14443-4 for type A
static byte PARAM_ID_TYPE_A_CARD_MODE
          Type A card emulation enabled indicator
static byte PARAM_ID_TYPE_A_CARD_SAK
          Pre-formatted SAK as defined in ISO/IEC 14443-3 for type A
static byte PARAM_ID_TYPE_A_CARD_UID_REG
          UID as defined in ISO/IEC 14443-3 for type A
static byte PARAM_ID_TYPE_B_CARD_AFI
          Application family identifier as defined in ISO/IEC 14443-3 [6] for type B
static byte PARAM_ID_TYPE_B_CARD_ATQB
          Additional data for ATQB
static byte PARAM_ID_TYPE_B_CARD_DATARATE_MAX
          Maximum data rate supported
static byte PARAM_ID_TYPE_B_CARD_HIGHER_LAYER_RESPONSE
          Higher Layer response in answer to ATTRIB command as defined in ISO/IEC 14443-3 [6] for type B
static byte PARAM_ID_TYPE_B_CARD_MODE
          Type B card emulation enabled indicator
static byte PARAM_ID_TYPE_B_CARD_PUPI_REG
          PUPI as defined in ISO/IEC 14443-3 [6] for type B.
static byte PARAM_ID_TYPE_B_PRIME_CARD_DAT_OUT
          Data to reply if the incoming data matches with PAT_IN pattern
static byte PARAM_ID_TYPE_B_PRIME_CARD_MODE
          Type B' card emulation enabled indicator
static byte PARAM_ID_TYPE_B_PRIME_CARD_PAT_IN
          Pattern to match with the incoming data
static byte PARAM_ID_TYPE_F_CARD_CLT_SUPPORT
          Support of tunnelling mode for anti-collision data exchange in type F card emulation
static byte PARAM_ID_TYPE_F_CARD_MODE
          Type F card emulation enabled indicator
static byte PARAM_ID_TYPE_F_CARD_SPEED_CAP
          CLF Speed Capabilities for Type F
 
Fields inherited from interface uicc.hci.framework.HCIMessage
RESP_ANY_E_CMD_NOT_SUPPORTED, RESP_ANY_E_INHIBITED, RESP_ANY_E_NOK, RESP_ANY_E_NOT_CONNECTED, RESP_ANY_E_REG_ACCESS_DENIED, RESP_ANY_E_REG_PAR_UNKNOWN, RESP_ANY_OK, TYPE_COMMAND, TYPE_EVENT, TYPE_RESPONSE
 
Method Summary
 void prepareAndSendGetParameterCommmand(byte paramID)
          This non-blocking method builds the HCI command ANY_GET_PARAMETER for the indicated information and sends it to the appropriate Card RF Gate of the CLF.
 void prepareAndSendSendDataEvent(byte[] data, short offset, short len)
          This non-blocking method builds the the HCI event EVT_SEND_DATA sends it to the Contactless Card Emulation Gate of the CLF.
 boolean selectingMessage()
          This method is used by the applet to distinguish the HCI Message command which selected this applet from all other HCI messages.
 
Methods inherited from interface uicc.hci.framework.HCIMessage
getInstruction, getReceiveBuffer, getReceiveLength, getReceiveOffset, getType, isComplete, isHeading
 

Field Detail

PARAM_ID_TYPE_A_CARD_MODE

static final byte PARAM_ID_TYPE_A_CARD_MODE
Type A card emulation enabled indicator

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_UID_REG

static final byte PARAM_ID_TYPE_A_CARD_UID_REG
UID as defined in ISO/IEC 14443-3 for type A

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_SAK

static final byte PARAM_ID_TYPE_A_CARD_SAK
Pre-formatted SAK as defined in ISO/IEC 14443-3 for type A

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_ATQA

static final byte PARAM_ID_TYPE_A_CARD_ATQA
Pre-formatted ATQA; byte 1 shall contain b8..1, byte 2 b16..9 of the ATQA coded as defined in ISO/IEC 14443- 3 [6] for type A

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_APPLICATION_DATA

static final byte PARAM_ID_TYPE_A_CARD_APPLICATION_DATA
The historical bytes as defined in ISO/IEC 14443-4 for type A

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_FWI_SFGI

static final byte PARAM_ID_TYPE_A_CARD_FWI_SFGI
Frame waiting time and Start-up frame guard time as defined in ISO/IEC 14443-4 for type A

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_CID_SUPPORT

static final byte PARAM_ID_TYPE_A_CARD_CID_SUPPORT
support for CID as defined ISO/IEC 14443-4

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_CLT_SUPPORT

static final byte PARAM_ID_TYPE_A_CARD_CLT_SUPPORT
Support of tunneling mode for ISO/IEC 14443-4 [7] non compliant protocols

See Also:
Constant Field Values

PARAM_ID_TYPE_A_CARD_DATARATE_MAX

static final byte PARAM_ID_TYPE_A_CARD_DATARATE_MAX
Maximum data rate supported

See Also:
Constant Field Values

PARAM_ID_TYPE_B_CARD_MODE

static final byte PARAM_ID_TYPE_B_CARD_MODE
Type B card emulation enabled indicator

See Also:
Constant Field Values

PARAM_ID_TYPE_B_CARD_PUPI_REG

static final byte PARAM_ID_TYPE_B_CARD_PUPI_REG
PUPI as defined in ISO/IEC 14443-3 [6] for type B.

See Also:
Constant Field Values

PARAM_ID_TYPE_B_CARD_AFI

static final byte PARAM_ID_TYPE_B_CARD_AFI
Application family identifier as defined in ISO/IEC 14443-3 [6] for type B

See Also:
Constant Field Values

PARAM_ID_TYPE_B_CARD_ATQB

static final byte PARAM_ID_TYPE_B_CARD_ATQB
Additional data for ATQB

See Also:
Constant Field Values

PARAM_ID_TYPE_B_CARD_HIGHER_LAYER_RESPONSE

static final byte PARAM_ID_TYPE_B_CARD_HIGHER_LAYER_RESPONSE
Higher Layer response in answer to ATTRIB command as defined in ISO/IEC 14443-3 [6] for type B

See Also:
Constant Field Values

PARAM_ID_TYPE_B_CARD_DATARATE_MAX

static final byte PARAM_ID_TYPE_B_CARD_DATARATE_MAX
Maximum data rate supported

See Also:
Constant Field Values

PARAM_ID_TYPE_B_PRIME_CARD_MODE

static final byte PARAM_ID_TYPE_B_PRIME_CARD_MODE
Type B' card emulation enabled indicator

See Also:
Constant Field Values

PARAM_ID_TYPE_B_PRIME_CARD_PAT_IN

static final byte PARAM_ID_TYPE_B_PRIME_CARD_PAT_IN
Pattern to match with the incoming data

See Also:
Constant Field Values

PARAM_ID_TYPE_B_PRIME_CARD_DAT_OUT

static final byte PARAM_ID_TYPE_B_PRIME_CARD_DAT_OUT
Data to reply if the incoming data matches with PAT_IN pattern

See Also:
Constant Field Values

PARAM_ID_TYPE_F_CARD_MODE

static final byte PARAM_ID_TYPE_F_CARD_MODE
Type F card emulation enabled indicator

See Also:
Constant Field Values

PARAM_ID_TYPE_F_CARD_SPEED_CAP

static final byte PARAM_ID_TYPE_F_CARD_SPEED_CAP
CLF Speed Capabilities for Type F

See Also:
Constant Field Values

PARAM_ID_TYPE_F_CARD_CLT_SUPPORT

static final byte PARAM_ID_TYPE_F_CARD_CLT_SUPPORT
Support of tunnelling mode for anti-collision data exchange in type F card emulation

See Also:
Constant Field Values
Method Detail

prepareAndSendGetParameterCommmand

void prepareAndSendGetParameterCommmand(byte paramID)
                                        throws HCIException
This non-blocking method builds the HCI command ANY_GET_PARAMETER for the indicated information and sends it to the appropriate Card RF Gate of the CLF.

Parameters:
paramID - constant PARAM_ID_* indicating the requested value
Throws:
HCIException - with the following reason code:
  • HCI_CURRENTLY_DISABLED if the HCI interface was disabled
  • HCI_FRAGMENTED_MESSAGE_ONGOING if the Contactless Framework is still receiving a fragmented HCI Message
  • HCI_RESOURCES_NOT_AVAILABLE if the contactless framework does not have enough resources to process the command

prepareAndSendSendDataEvent

void prepareAndSendSendDataEvent(byte[] data,
                                 short offset,
                                 short len)
                                 throws HCIException,
                                        java.lang.NullPointerException,
                                        java.lang.ArrayIndexOutOfBoundsException
This non-blocking method builds the the HCI event EVT_SEND_DATA sends it to the Contactless Card Emulation Gate of the CLF.

Parameters:
data - to be sent formated accordng to he HCI specification
offset - of data into the data buffer
len - length of data in the data buffer
Throws:
HCIException - with the following reason code:
  • HCI_CURRENTLY_DISABLED if the HCI interface was disabled
  • HCI_FRAGMENTED_MESSAGE_ONGOING if the Contactless Framework is still receiving a fragmented HCI Message
  • HCI_RESOURCES_NOT_AVAILABLE if the contactless framework does not have enough resources to process the command
java.lang.NullPointerException - if data is null
java.lang.ArrayIndexOutOfBoundsException - if operation would cause access of data outside array bounds.

selectingMessage

boolean selectingMessage()
This method is used by the applet to distinguish the HCI Message command which selected this applet from all other HCI messages.

Returns:
true if the current HCI message caused the selection of the Applet according to the rules in GlobalPlatform Amendment C[4]