com.esri.arcgis.geoprocessing
Interface IGPToolExtension

All Superinterfaces:
Serializable
All Known Implementing Classes:
FMETool, IGPToolExtensionProxy

public interface IGPToolExtension
extends Serializable

Provides access to methods on a custom geoprocessing tool extension.

Product Availability

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


Method Summary
 boolean canEditSource()
          Returns whether or not the source for the tool extension can be edited.
 void execute(IArray paramvalues, ITrackCancel trackCancel, IGPEnvironmentManager pEnvMgr, IGPMessages messages)
          Executes the tool extension given the set of parameter values.
 IGPCustomToolHelper getCustomToolHelper()
          The custom tool helper object associated with the tool extension.
 IUID getDialogCLSID()
          The CLSID of a custom dialog class to enter/edit parameter values for custom tools associated with this tool extension.
 IArray getParameterInfo()
          The parameters required to execute the custom tool associated with this tool extension.
 Object getRenderer(IGPParameter pParam)
          Returns a custom renderer for a given parameter.
 IGPToolExtensionFactory getToolExtensionFactory()
          The factory object associated with this tool extension.
 boolean isLicensed()
          Returns whether or not the tool extension has all necessary product licenses to be executed.
 boolean isLicensedForProduct()
          Returns whether or not the tool extension can be executed within the current application product.
 boolean isValid()
          Returns whether or not the tool extension is can be executed.
 void setCustomToolHelperByRef(IGPCustomToolHelper helper)
          The custom tool helper object associated with the tool extension.
 void synchronizeMetadata(int action, int interval, IPropertySet metadata)
          Updates the given metadata property set with the current tool extension properties.
 IGPMessages validate(IArray paramvalues, boolean updateValues, IGPEnvironmentManager pEnvMgr)
          Validates the given set of values.
 

Method Detail

getToolExtensionFactory

IGPToolExtensionFactory getToolExtensionFactory()
                                                throws IOException,
                                                       AutomationException
The factory object associated with this tool extension.

Product Availability

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

Returns:
A reference to a com.esri.arcgis.geoprocessing.IGPToolExtensionFactory
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getCustomToolHelper

IGPCustomToolHelper getCustomToolHelper()
                                        throws IOException,
                                               AutomationException
The custom tool helper object associated with the tool extension.

Product Availability

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

Returns:
A reference to a com.esri.arcgis.geoprocessing.IGPCustomToolHelper
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setCustomToolHelperByRef

void setCustomToolHelperByRef(IGPCustomToolHelper helper)
                              throws IOException,
                                     AutomationException
The custom tool helper object associated with the tool extension.

Product Availability

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

Parameters:
helper - A reference to a com.esri.arcgis.geoprocessing.IGPCustomToolHelper (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDialogCLSID

IUID getDialogCLSID()
                    throws IOException,
                           AutomationException
The CLSID of a custom dialog class to enter/edit parameter values for custom tools associated with this tool extension.

Product Availability

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

Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getParameterInfo

IArray getParameterInfo()
                        throws IOException,
                               AutomationException
The parameters required to execute the custom tool associated with this tool extension.

Product Availability

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

Returns:
A reference to a com.esri.arcgis.system.IArray
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isValid

boolean isValid()
                throws IOException,
                       AutomationException
Returns whether or not the tool extension is can be executed.

Product Availability

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

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

isLicensedForProduct

boolean isLicensedForProduct()
                             throws IOException,
                                    AutomationException
Returns whether or not the tool extension can be executed within the current application product.

Product Availability

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

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

isLicensed

boolean isLicensed()
                   throws IOException,
                          AutomationException
Returns whether or not the tool extension has all necessary product licenses to be executed.

Product Availability

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

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

canEditSource

boolean canEditSource()
                      throws IOException,
                             AutomationException
Returns whether or not the source for the tool extension can be edited.

Product Availability

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

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

getRenderer

Object getRenderer(IGPParameter pParam)
                   throws IOException,
                          AutomationException
Returns a custom renderer for a given parameter.

Product Availability

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

Parameters:
pParam - A reference to a com.esri.arcgis.geoprocessing.IGPParameter (in)
Returns:
A reference to another Object (IUnknown)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

validate

IGPMessages validate(IArray paramvalues,
                     boolean updateValues,
                     IGPEnvironmentManager pEnvMgr)
                     throws IOException,
                            AutomationException
Validates the given set of values.

Product Availability

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

Parameters:
paramvalues - A reference to a com.esri.arcgis.system.IArray (in)
updateValues - The updateValues (in)
pEnvMgr - A reference to a com.esri.arcgis.geoprocessing.IGPEnvironmentManager (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.IGPMessages
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

execute

void execute(IArray paramvalues,
             ITrackCancel trackCancel,
             IGPEnvironmentManager pEnvMgr,
             IGPMessages messages)
             throws IOException,
                    AutomationException
Executes the tool extension given the set of parameter values.

Product Availability

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

Parameters:
paramvalues - A reference to a com.esri.arcgis.system.IArray (in)
trackCancel - A reference to a com.esri.arcgis.system.ITrackCancel (in)
pEnvMgr - A reference to a com.esri.arcgis.geoprocessing.IGPEnvironmentManager (in)
messages - A reference to a com.esri.arcgis.geodatabase.IGPMessages (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

synchronizeMetadata

void synchronizeMetadata(int action,
                         int interval,
                         IPropertySet metadata)
                         throws IOException,
                                AutomationException
Updates the given metadata property set with the current tool extension properties.

Product Availability

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

Parameters:
action - A com.esri.arcgis.geodatabase.esriMetadataSyncAction constant (in)
interval - The interval (in)
metadata - A reference to a com.esri.arcgis.system.IPropertySet (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.