Supported Methods

This section describes the methods that must be implemented to support the following interface:

Copy
com.activcard.aims.plugin.staticdata.StaticDataCollectionPlugin

A static data Cardholder-related information including things such as health benefits, biometrics, unique organizational identifiers, or unique personal identifiers that rarely change. plug-in must be used to implement this interface. This interface is defined in the aims-business.jar file located in the following folder:

Copy
cms_install_dir\cms_portal\WEB-INF\lib

where cms_install_dir represents the directory into which ActivID CMS was installed. The supported methods are listed in alphabetic format in the following section.

computeCredentialParameters()

The ActivID CMS server calls this function to retrieve computed data from the plug-in. This data is stored on the smart card GC applet instance and the format of the data is defined by the plug-in. The associated data storage application appends the data delivered by the plug-in to the GC applet instance.

Copy
Map computeCredentialParameters(
String userDN, String deviceType, String deviceCUID)

Parameters:

  • userDN—String; the LDAP Distinguish Name of the user.

  • deviceType—String; the type of device. The current version of ActivID CMS supports five types of devices: OP_2.0 Smart Cards, PKCS#11 Devices, Mobile App Certificates (MOBILE), Mobile Smart Cards (MSC), Virtual Smart Cards (VSC) and YubiKeys (YK).

    Note: Support for mobile smart cards (MSC) has been deprecated starting with ActivID CMS 5.4.
  • deviceCUID—String; identifier that uniquely identifies the device (serial number).

Returns:

  • Map— Data to be stored on the smart card. There are two elements in the returned Java Map object, and these are defined in the following table:

Key Value

persoGC/BufferValue/ BufferT

Byte array (byte[ ]) that defines the data to be appended to the Tag buffer of the Generic Container A Generic Container (GC) applet is used to store static data on devices. The applet treats all data as opaque or generic and never attempts to assign any meaning to the data with which it is dealing..
Note: The TLV returns only the second one, not this array.
persoGC/BufferValue/ BufferV

Byte array (byte[]) that defines the data to be appended to the Value buffer of the Generic Container.

Note: The TLV returns only this element.

getConfigurationTemplate()

Retrieves the implementation-specific input requirements of the implementing class expressed by the ConfigurationTemplate method (which is called before calling typical initialization methods).

Copy
ConfigurationTemplate getConfigurationTemplate();

Parameters: None.

Returns: String—Implementation-specific input requirements of the implementing class expressed by the ConfigurationTemplate method.

getInterfaceVersion()

Returns the version of the interface that this plug-in implements. Implementations should always return the INTERFACE_VERSION constant of this interface.

Copy
String getInterfaceVersion();

Parameters: None.

Returns: String—ActivID CMS uses this method to verify that the plug-in is compatible with its current version.

The plug-in should always return the INTERFACE_VERSION constant of this interface.

getPluginProvider()

Returns the name of the provider of the plug-in (for example, HIDGlobal).

Copy
String getPluginProvider()

Parameters: None.

Returns: String—Name of the provider of the plug-in (for example, HIDGlobal).

getPluginVersion()

The ActivID CMS server calls this function to retrieve the current version of the plug-in. This information is stored in the logical representation of the device in the ActivID CMS database.

Copy
String getPluginVersion()

Parameters: None

Returns: String—Version of the plug-in (for example, 1.0).

init()

The ActivID CMS server calls this function to initialize the plug-in by passing it parameters. By the time the init() method is called, all the parameters have already been resolved (the values coming from LDAP and from the user have already been collected).

Copy
void init(Map aParametersMap) throws Exception

Parameters: aParametersMap—Map.Parameters to initialize the plug-in (for example, the name of the file that contains the data to collect, the IP address of the database to access). These parameters are defined in the corresponding plug-in section of the device profile An XML file that contains information about all the applets and applet instances that are to be loaded onto the device.. Each parameter is provided as a pair (String key, Object[] values). Cast the Object array to the appropriate type for each of the keys. The keys and the type are defined in the device profile XML file, in the definition of the plug-in. For an example of what the Map looks like, see Example: Defining a data storage application, above.

Returns: None.

setConfiguration()

Sets the Configuration resulting from a prior call to  . The Configuration is a completed form of the previously retrieved ConfigurationTemplate. This method is called prior to calling typical initialization methods.

Copy
void setConfiguration(Configuration configuration);

Parameters: configuration—Represents configuration data is passed to be implemented for use in the normal initialization process(es).