public interface SystemModule
The SystemModule is used by an OCAP-J application
to send an APDU to the CableCARD device.
A SystemModule instance is provided by the
SystemModuleHandler.ready(org.ocap.system.SystemModule)
method after calling the
SystemModuleRegistrar.registerSASHandler(org.ocap.system.SystemModuleHandler, byte[])
method or the
SystemModuleRegistrar.registerMMIHandler(org.ocap.system.SystemModuleHandler)
method.
SystemModuleRegistrar
Modifier and Type | Method and Description |
---|---|
void |
sendAPDU(int apduTag,
byte[] dataByte)
This method sends an APDU to the CableCARD device.
|
void sendAPDU(int apduTag, byte[] dataByte)
This method sends an APDU to the CableCARD device. The APDU structure is defined in Table 16 in Section 8.3 of EIA-679-B referred by [CCIF 2.0] and SCTE 28 2003. The APDU structure consists of apdu_tag, length_field and data_byte.
For the Private Host Application of the SAS Resource, the
session number for sending the APDU is decided by the OCAP
implementation automatically when registered via the
SystemModuleRegistrar.registerSASHandler(org.ocap.system.SystemModuleHandler, byte[])
method.
Sending APDU is delegated to the SAS Resource.
For the MMI Resource and Application Information Resource, sending APDU is delegated to the resident MMI and Application Information Resources. The OCAP-J application can send APDUs of either MMI Resource or Application Information Resource via a single SystemModule. The OCAP implementation SHALL investigate the apdu_tag field in the APDU and send the APDU to the CableCARD device using the session of the Resource specified by the apdu_tag. The session established by the resident MMI Resource and Application Information Resource is used to send the APDU.
For both above, the delegated Resource encodes the specified APDU into an SPDU complementing a length_field and sends it to the CableCARD device according to the OpenCable CableCARD Interface Specification.
The OCAP implementation doesn't have to confirm the validity of the specified dataByte parameter, but SHALL confirm the validity of the specified apduTag value.
This method returns immediately and doesn't confirm success of
sending the APDU. Errors detected while sending the APDU are
notified via the SystemModuleHandler.sendAPDUFailed(int, byte[])
method.
apduTag
- an apdu_tag value for the APDU to be sent to the
CableCARD device.dataByte
- a data_byte binary for the APDU to be sent to
the CableCARD device.
This value shall contain only the data_byte part of
an APDU structure defined in the OpenCable CableCARD
Interface Specification. The APDU consists of the
specified apduTag and dataByte and a length_field
complemented by the OCAP implementation.IllegalArgumentException
- if the specified apdu_tag value
is invalid (i.e., the value is not among possible tag
values for MMI Resource or Application Information
Resource).
Possible apdu_tag values and possible direction for
each Resource are defined in the OpenCable CableCARD
Interface Specification.Copyright © 2013 CableLabs. All rights reserved.