Selecting a Scripted Connector Implementation
The Groovy Connector Toolkit provides five default connector implementations. The default implementations should address the requirements of most target resources. If you use one of the default implementations, you need only write the accompanying scripts and point your connector to their location. If your target resource is not covered by the default implementations, you can use the Maven archetype to create a new connector project, and write a custom Groovy-based connector from scratch.
The following list describes the default scripted connector implementations provided with the Groovy Connector Toolkit:
GROOVY- a basic non-pooled Groovy connector, provided in the
POOLABLEGROOVY- a poolable Groovy connector, provided in the
CREST- a connector based on the ForgeRock® Common REST API, and provided in the
org.forgerock.openicf.connectors.groovy.ScriptedCRESTConnectorclass. The Scripted CREST connector takes a schema configuration file to define the attribute mapping from the ICF connector object to the Common REST resource.
REST- a scripted REST connector, provided in the
org.forgerock.openicf.connectors.groovy.ScriptedRESTConnectorclass. The scripted REST connector enables you to connect to any resource, over HTTP/REST. The connector creates the HTTP/REST context (specifying the content type, authentication mode, encoding, and so on), and manages the connection. The connector relies on the Groovy scripting language and its RESTClient package.
SQL- a scripted SQL connector, provided in the
org.forgerock.openicf.connectors.groovy.ScriptedSQLConnectorclass. The scripted SQL connector uses Groovy scripts to interact with a JDBC database.
When you have selected a scripted connector implementation, write the required scripts that correspond to that connector type. "Implementing ICF Operations With Groovy Scripts" provides information and examples on how to write scripts for the basic scripted connector implementation, and information on the extensions available for the other implementations.