com.esri.arcgis.geodatabase
Interface IPlugInLicense

All Superinterfaces:
Serializable
All Known Implementing Classes:
IPlugInLicenseProxy

public interface IPlugInLicense
extends Serializable

Provides access to members for managing a licensed plug-in.

Description

Implement this interface if your plug-in data source requires a license to be used. The interface can be implemented on the plug-in workspace helper class, or the plug-in dataset helper.

A plug-in workspace helper should implement IPlugInLicense if enabling the license enables all datasets of the data source type. If only some datasets are to be enabled, the interface should be implemented on the plug-in dataset helper. If the interface is implemented on both classes, the implementation on the dataset helper will be used. The license is checked by the plug-in feature classes, tables and cursors when they are created.

Remarks

If your plug-in data source will require a license to be used, you must implement a plug-in extension class.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 void addLicenseRef()
          Increases the count of things needing the license.
 void checkExtensionLicense()
          Checks if the license for the extension is enabled.
 void releaseLicenseRef()
          Decreases the count of things needing the license.
 

Method Detail

checkExtensionLicense

void checkExtensionLicense()
                           throws IOException,
                                  AutomationException
Checks if the license for the extension is enabled. Fails if not enabled.

Description

Succeeds if the license is enabled. May attempt to enable the license if the extension is an automatic extension. If the license is not or cannot be enabled, this method should fail. If possible, it should fail with FDO_E_NO_OPERATION_LICENSE as the HRESULT.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

addLicenseRef

void addLicenseRef()
                   throws IOException,
                          AutomationException
Increases the count of things needing the license.

Description

Increments the count of datasets and cursors using the license.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

releaseLicenseRef

void releaseLicenseRef()
                       throws IOException,
                              AutomationException
Decreases the count of things needing the license.

Description

Decrements the count of datasets and cursors using the license.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.