Skip navigation links

Oracle® Fusion Middleware Java API Reference for Identity Connector Framework
12c(12.2.1.3.0)
E96483-01

The Connector framework provides a consistent, generic layer between calling applications and the Connector bundles that access target resources.

See: Description

Packages 
Package Description
org.identityconnectors.common
Common utilities for all Connectors.
org.identityconnectors.common.l10n  
org.identityconnectors.common.logging
This package is responsible for providing logging to the Framework and the Connectors.
org.identityconnectors.common.pooling
Contains pooling configuration class only.
org.identityconnectors.common.script
Scripting support in ICF.
org.identityconnectors.common.security
Provides facility to secure String and ByteArray, so it is securely stored in a memory (or transported to Connector Server).
org.identityconnectors.framework.api
The Connector API presents a consistent view of any Connector, regardless of which operations the connector actually implements.
org.identityconnectors.framework.api.operations  
org.identityconnectors.framework.common  
org.identityconnectors.framework.common.exceptions  
org.identityconnectors.framework.common.objects  
org.identityconnectors.framework.common.objects.filter  
org.identityconnectors.framework.common.serializer  
org.identityconnectors.framework.spi
'Service Provider Interface' package - the developer of a connector-bundle implements the SPI.
org.identityconnectors.framework.spi.operations  
org.identityconnectors.test.common
The org.identityconnectors.test.common package offers a set of utility classes and methods useful to connector tests.
org.identityconnectors.test.common.spi  
The Connector framework provides a consistent, generic layer between calling applications and the Connector bundles that access target resources. Each target resource may be a system or application in its own right, but a Connector bundle enables any calling application to manage objects that exist on the target resource.

Calling applications use the Connector API; Connector bundles implement the Connector SPI. The Connector API (org.identityconnectors.framework.api) is generic (in that it can be used to manipulate any type of object, not merely accounts), but the Connector API is optimized to support provisioning operations and password management. Every supported operation is synchronous to the caller.

This Toolkit is designed to support development with minimal dependencies of Connector bundles that implement the SPI. The Toolkit allows a developer to implement a Connector bundle and to test the bundle within the Connector framework so there is no need to implement it or test it within the context of each calling application.

The developer of a Connector bundle is expected to implement the operations (Java interfaces within the org.identityconnectors.framework.spi.operations package) that make the most sense for the target resource the developer intends to support. The developer is expected to be appropriately flexible in tolerating inputs, to be as reasonably robust in handling errors, and to throw errors whenever it is prudent to do so. Applications that use Connectors should expect java.lang.IllegalArgumentException, java.lang.UnsupportedOperationException, java.lang.IllegalStateException and other subclasses of java.lang.RuntimeException.

NOTE: The developers of this framework made a conscious decision to throw RuntimeException (and subclasses of RuntimeException) rather than using declared exceptions. The reasoning, briefly, is as follows:

  1. Declared exceptions tend to bloat code (and changes in declared exceptions tend to ripple).
  2. RuntimeException is ubiquitous; any piece of code can throw them (even without intending to do so).
  3. Java defines subclasses of RuntimeException that cover most common situations.

One of the main functions of this framework is to prevent coupling between a Connector and any application that uses it. A calling application will be coupled only to this framework and not to any specific Connector.

Skip navigation links

Copyright © 2017, Oracle and/or its affiliates. All rights reserved.