Package com.crystaldecisions.sdk.plugin.desktop.licensekey

This package allows you to monitor license key information, and add additional license keys.

See:
          Description

Interface Summary
CeProductLevel This interface defines constants for product levels.
CeProductName This interface defines constants for product names.
CeUserLicenseType This interface defines constants that describe the type of license associated with the license key.
ILicenseKey This interface inherits from the IInfoObject and ILicenseKeyBase interfaces.
ILicenseKeyBase The ILicenseKey interface provides metrics on the license keys you have purchased with the product and allows you to add new license keys.
 

Package com.crystaldecisions.sdk.plugin.desktop.licensekey Description

This package allows you to monitor license key information, and add additional license keys. For more information, see "Appendix D: Licensing Information" in the Crystal Enterprise Administrator's Guide.

Retrieving desktop plugins

Each object that is created with a desktop plugin is stored in either the CI_INFOOBJECTS or the CI_SYSTEMOBJECTS category in the APS InfoStore, and is marked with a programmatic identifier (ProgID). Using SI_PROGID, you can query the APS InfoStore for a collection of objects.

Example

The following query selects the license key information, and IDs of all ILicenseKey objects in the APS:

IInfoObjects licenseKeyObjs = iStore.query("SELECT SI_ID, SI_LICENSE_KEY FROM CI_SYSTEMOBJECTS WHERE SI_PROGID='CrystalEnterprise.LicenseKey'");

The query method returns a collection of InfoObjects, which in this case are ILicenseKey objects. Like other InfoObjects, these objects are uniquely represented by their ID property. For each object in the collection, you can access general InfoObject properties, such as the SI_NAME property, SI_DESCRIPTION property, and SI_ID property.

To access the ILicenseKey objects returned by the query, the resulting IInfoObjects need to be cast. This example demonstrates how to cast the returned IInfoObjects as ILicenseKey objects.

for (int i = 0; i < licenseKeyObjs.size(); i++)
{
    IInfoObject obj = (IInfoObject) licenseKeyObjs.get(i);
    ILicenseKey licenseKey = (ILicenseKey) obj;
}