Intel

Developer Zone

CLSManager


com.intel.util
Class CLSManager

java.lang.Object
  extended by com.intel.util.CLSManager

public abstract class CLSManager
extends java.lang.Object

The class enables access to iCLS functionality. Applet needs to implement CLSClient interface to receive notifications from FW iCLS infrastructure.


Constructor Summary
CLSManager()
Method Summary
static CLSManager getInstance()
Method enables to access single instance of CLS Manager to access iCLS functionality.
abstract void register(CLSClient client, short subclass, byte[] permitData, int offset, int length)
Registers the provided CLS client to receive iCLS events related to the specified subclass.
abstract void unregister(short subclass)
Unregister CLS client from getting CLS events.
Methods inherited from class java.lang.Object
equals, hashCode, toString

Constructor Detail

CLSManager

public CLSManager()
Method Detail

getInstance

public static final CLSManager getInstance()
Method enables to access single instance of CLS Manager to access iCLS functionality.

Returns:
instance of CLSManager

register

public abstract void register(CLSClient client,
                              short subclass,
                              byte[] permitData,
                              int offset,
                              int length)
Registers the provided CLS client to receive iCLS events related to the specified subclass. This method should be called before the iCLS transaction starts (i.e. "create permit" request is sent to the iCLS FW). Note that only single instance of an application can be registered to a specific sub class at a given time. In addition, if during the started transaction the client unregisters from this sub-class for some reason (for example, the application crashes), the transaction will be abandoned by the system and needs to be restarted by sending new permit request.

Parameters:
client - CLSClient interface implemented by applet to receive CLS events
subclass - subclass of the permit to register to.
permitData - predefined applet capability descriptor, this data will be copied into the permit when "create permit" request is received by the iCLS FW from the SW application.
offset - offset in buffer to read permitData
length - length of permitData in the buffer.
Throws:
AccessDeniedException - using subclass and/or featureFlagMask value that is not allowed in applet manifest
IllegalParameterException - registering with permitData is null but offset and length are not set to 0
IllegalUseException - registering with subclass that is in use by this or other applet
UtilOutOfResourcesException - system is out of resources
UtilException - general failure occurs

unregister

public abstract void unregister(short subclass)
Unregister CLS client from getting CLS events. This method should be called after the CLS transaction completed. Any attempt to unregister from subclass that is not been register or unregister from subclass that have been register by other applet will cause to IllegalUseException

Parameters:
subclass - subclass of the permit to unregister from.
Throws:
IllegalUseException - unregistering from already unregistered subclass or subclass that have been registered by other applet
UtilException - general failure occurs