Class BaseDelegatingConnector
- java.lang.Object
-
- sailpoint.connector.CollectorServices
-
- sailpoint.connector.AbstractConnector
-
- com.identityworksllc.iiq.common.connector.BaseDelegatingConnector
-
- All Implemented Interfaces:
openconnector.ConnectorStateChangeListener,sailpoint.connector.Connector
public class BaseDelegatingConnector extends sailpoint.connector.AbstractConnector implements openconnector.ConnectorStateChangeListener
A straightforward “delegating” connector that will allow loading of connector classes from a plugin.All connector operations will be forwarded to the delegate.
-
-
Field Summary
-
Fields inherited from class sailpoint.connector.AbstractConnector
_state, CONFIG_DONT_TRANSFORM_CSV, CONFIG_DONT_TRANSFORM_CSV_ATTRS, CONFIG_FILTER_STRING, CONFIG_PAGE_SIZE, CONFIG_RETRYABLE_ERRORS, DEFAULT_PAGE_SIZE, RESPONSE_DATA_KEY
-
Fields inherited from interface sailpoint.connector.Connector
ATT_CHILD_OBJECTS, ATT_CIQ_MULTIPLEX_IDENTITY, ATT_CIQ_SOURCE_APPLICATION, ATT_IIQ_DISABLED, ATT_IIQ_LOCKED, ATT_MULTIPLEX_IDENTITY, ATT_PRIVILEGED, ATT_SOURCE_APPLICATION, ATTR_DIRECT_PERMISSIONS, ATTR_GROUPS, ATTR_TARGET_PERMISSIONS, CONFIG_AGGREGATION_MODE, CONFIG_AUTH_SEARCH_ATTRIBUTES, CONFIG_BUILD_MAP_RULE, CONFIG_GROUP_HIERARCHY_ATTRIBUTE, CONFIG_HOST, CONFIG_JDBC_BUILD_MAP_RULE, CONFIG_JDBC_CREATE_PROVISION_RULE, CONFIG_JDBC_DELETE_PROVISION_RULE, CONFIG_JDBC_DISABLE_PROVISION_RULE, CONFIG_JDBC_ENABLE_PROVISION_RULE, CONFIG_JDBC_MODIFY_PROVISION_RULE, CONFIG_JDBC_PROVISION_RULE, CONFIG_JDBC_UNLOCK_PROVISION_RULE, CONFIG_MERGE_MAPS_RULE, CONFIG_OBJECT_FILTERS, CONFIG_PARTITION_MODE, CONFIG_PASSWORD, CONFIG_PEOPLESOFTHRMS_CREATE_PROVISION_RULE, CONFIG_PEOPLESOFTHRMS_DELETE_PROVISION_RULE, CONFIG_PEOPLESOFTHRMS_DISABLE_PROVISION_RULE, CONFIG_PEOPLESOFTHRMS_ENABLE_PROVISION_RULE, CONFIG_PEOPLESOFTHRMS_MODIFY_PROVISION_RULE, CONFIG_PEOPLESOFTHRMS_PROVISION_RULE, CONFIG_PEOPLESOFTHRMS_UNLOCK_PROVISION_RULE, CONFIG_PERMISSION_SCOPE, CONFIG_PORT, CONFIG_PROVIDER, CONFIG_PROXY_GENERATOR_RULE, CONFIG_RWS_AFTER_OPERATION_RULE, CONFIG_RWS_BEFORE_OPERATION_RULE, CONFIG_SAPHR_CREATE_PROVISION_RULE, CONFIG_SAPHR_DELETE_PROVISION_RULE, CONFIG_SAPHR_DISABLE_PROVISION_RULE, CONFIG_SAPHR_ENABLE_PROVISION_RULE, CONFIG_SAPHR_MODIFY_PROVISION_RULE, CONFIG_SAPHR_PROVISION_RULE, CONFIG_SAPHR_UNLOCK_PROVISION_RULE, CONFIG_SUCCESSFACTORS_PROVISION_RULE, CONFIG_TRANSFORMATION_RULE, CONFIG_USER, OP_AGGREGATION_TYPE, OP_ALLOW_BRUTE_FORCE_SEARCH, OP_ATTRIBUTE_NAMES, OP_DELTA_AGGREGATION, OP_INCLUDE_ACCOUNTS, OP_IS_PARTITIONED, OP_IS_TERMINATE, OP_PHASE_NAME, OP_UNIQUENESS_CHECK, PROVISION_GLOBAL_RULE, PROVISION_OPERATION_RULE, PROVISION_RULE_TYPE, SAPHR_CUSTOM_MANAGER_MODEL_RULE, SAPHR_CUSTOM_MANAGER_RULE, TYPE_ACCOUNT, TYPE_GROUP
-
-
Constructor Summary
Constructors Constructor Description BaseDelegatingConnector(sailpoint.object.Application application)Constructs a new BaseDelegatingConnector of the given type
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description sailpoint.object.ResourceObjectauthenticate(String s, String s1)sailpoint.object.ResourceObjectauthenticate(String s, Map<String,Object> map)sailpoint.object.ProvisioningResultcheckStatus(String s)voiddestroy(Map<String,Object> map)Map<String,Object>discoverApplicationAttributes(Map<String,Object> map)sailpoint.object.SchemadiscoverSchema(String s, Map<String,Object> map)MapdoHealthCheck(Map<String,Object> map)sailpoint.object.ApplicationgetApplication()openconnector.ConnectorServicesgetConnectorServices()StringgetConnectorType()Deprecated.List<sailpoint.object.AttributeDefinition>getDefaultAttributes()List<sailpoint.object.Schema>getDefaultSchemas()Map<String,Object>getDependencyData()StringgetInstance()List<sailpoint.object.Partition>getIteratorPartitions(String s, int i, sailpoint.object.Filter filter, Map<String,Object> map)sailpoint.object.ResourceObjectgetObject(String s, String s1, Map<String,Object> map)sailpoint.object.ApplicationgetProxiedApplication(String s, Map<String,Object> map)protected sailpoint.connector.ConnectorgetRealConnector()Retrieves the actual Connector to delegate to, optionally loading from a plugin if needed.List<sailpoint.object.Application.Feature>getSupportedFeatures()StringgetSystemIdentity()sailpoint.object.ApplicationgetTargetApplication()StringgetTargetInstance()sailpoint.tools.CloseableIterator<sailpoint.object.ResourceObject>iterateObjects(String s, sailpoint.object.Filter filter, Map<String,Object> map)sailpoint.tools.CloseableIterator<sailpoint.object.ResourceObject>iterateObjects(sailpoint.object.Partition partition)sailpoint.object.ProvisioningResultprovision(sailpoint.object.ProvisioningPlan provisioningPlan)voidsaveConnectorState()voidsaveConnectorState(Map<String,Object> stateMap)voidsetApplication(sailpoint.object.Application application)voidsetConnectorServices(openconnector.ConnectorServices connectorServices)voidsetInstance(String s)voidsetSystemIdentity(String s)voidsetTargetApplication(sailpoint.object.Application application)voidsetTargetInstance(String s)booleanshouldRetry(Exception ex, String error, sailpoint.object.ProvisioningResult result)booleansupportsPartitionedDeltaAggregation()voidtestConfiguration()voidupdateConnectorState(Map<String,Object> map)-
Methods inherited from class sailpoint.connector.AbstractConnector
buildResourceObjectFromMap, defaultMergeMaps, defaultTransformObject, defaultTransformObject, defaultTransformObject, discoverApplications, filterPermissions, filterPermissions, getAttributeNames, getAttributesToRetrieve, getChangeLogExtract, getConfigOptions, getEffectiveAttribute, getExtractPartitions, getFeatureFlagValue, getLocalApplication, getLoggingPlan, getProductFlagValue, getRealConnector, getRequiredSchemaConfig, getSchema, getSchema, getSchemaAttributeNames, getSchemaAttributes, getSchemaNativeObjectType, getSchemaPrototypeAttributeNames, getSchemas, getSecurityExtract, getStatisticsCollector, getUtilizationExtract, isAccount, isGroup, isSecret, logApplication, logPlan, mergeMaps, mergePermissions, setConnectorState, setStatisticsCollector, stringListToSchema, supportsFeature, updateApplicationConfig
-
Methods inherited from class sailpoint.connector.CollectorServices
addSchemaConfigs, buildList, buildStringList, buildStringList, coerceValue, getAttribute, getAttributes, getBooleanAttribute, getDecryptedAttributeValue, getEncryptedAttr, getEncryptedAttribute, getEncryptedSchemaConfig, getIntAttribute, getListAttribute, getLongAttribute, getObligatoryEncryptedAttr, getObligatoryStringAttribute, getRequiredAttribute, getRequiredEncryptedAttribute, getRequiredIntAttribute, getRequiredListAttribute, getRequiredStringAttribute, getSchemaConfig, getSchemaConfig, getSchemaConfigList, getSchemaConfigString, getStringAttribute, getStringListAttribute, runRule, setAttributes, toXml, toXml
-
-
-
-
Constructor Detail
-
BaseDelegatingConnector
public BaseDelegatingConnector(sailpoint.object.Application application)
Constructs a new BaseDelegatingConnector of the given type- Parameters:
application- The application to use for the connector
-
-
Method Detail
-
authenticate
public sailpoint.object.ResourceObject authenticate(String s, String s1) throws sailpoint.connector.ConnectorException, sailpoint.connector.ObjectNotFoundException, sailpoint.connector.AuthenticationFailedException, sailpoint.connector.ExpiredPasswordException
- Specified by:
authenticatein interfacesailpoint.connector.Connector- Overrides:
authenticatein classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorExceptionsailpoint.connector.ObjectNotFoundExceptionsailpoint.connector.AuthenticationFailedExceptionsailpoint.connector.ExpiredPasswordException
-
authenticate
public sailpoint.object.ResourceObject authenticate(String s, Map<String,Object> map) throws sailpoint.connector.ConnectorException, sailpoint.connector.ObjectNotFoundException, sailpoint.connector.AuthenticationFailedException, sailpoint.connector.ExpiredPasswordException
- Specified by:
authenticatein interfacesailpoint.connector.Connector- Overrides:
authenticatein classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorExceptionsailpoint.connector.ObjectNotFoundExceptionsailpoint.connector.AuthenticationFailedExceptionsailpoint.connector.ExpiredPasswordException
-
checkStatus
public sailpoint.object.ProvisioningResult checkStatus(String s) throws sailpoint.connector.ConnectorException, sailpoint.tools.GeneralException
- Specified by:
checkStatusin interfacesailpoint.connector.Connector- Overrides:
checkStatusin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorExceptionsailpoint.tools.GeneralException
-
destroy
public void destroy(Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
destroyin interfacesailpoint.connector.Connector- Overrides:
destroyin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
discoverApplicationAttributes
public Map<String,Object> discoverApplicationAttributes(Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
discoverApplicationAttributesin interfacesailpoint.connector.Connector- Overrides:
discoverApplicationAttributesin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
discoverSchema
public sailpoint.object.Schema discoverSchema(String s, Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
discoverSchemain interfacesailpoint.connector.Connector- Overrides:
discoverSchemain classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
doHealthCheck
public Map doHealthCheck(Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
doHealthCheckin interfacesailpoint.connector.Connector- Overrides:
doHealthCheckin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
getApplication
public sailpoint.object.Application getApplication()
- Specified by:
getApplicationin interfacesailpoint.connector.Connector- Overrides:
getApplicationin classsailpoint.connector.AbstractConnector
-
getConnectorServices
public openconnector.ConnectorServices getConnectorServices()
- Specified by:
getConnectorServicesin interfacesailpoint.connector.Connector- Overrides:
getConnectorServicesin classsailpoint.connector.CollectorServices
-
getConnectorType
@Deprecated public String getConnectorType()
Deprecated.- Specified by:
getConnectorTypein interfacesailpoint.connector.Connector- Overrides:
getConnectorTypein classsailpoint.connector.AbstractConnector
-
getDefaultAttributes
public List<sailpoint.object.AttributeDefinition> getDefaultAttributes()
- Specified by:
getDefaultAttributesin interfacesailpoint.connector.Connector- Overrides:
getDefaultAttributesin classsailpoint.connector.AbstractConnector
-
getDefaultSchemas
public List<sailpoint.object.Schema> getDefaultSchemas()
- Specified by:
getDefaultSchemasin interfacesailpoint.connector.Connector- Overrides:
getDefaultSchemasin classsailpoint.connector.AbstractConnector
-
getDependencyData
public Map<String,Object> getDependencyData() throws sailpoint.connector.ConnectorException
- Specified by:
getDependencyDatain interfacesailpoint.connector.Connector- Overrides:
getDependencyDatain classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
getInstance
public String getInstance()
- Specified by:
getInstancein interfacesailpoint.connector.Connector- Overrides:
getInstancein classsailpoint.connector.AbstractConnector
-
getIteratorPartitions
public List<sailpoint.object.Partition> getIteratorPartitions(String s, int i, sailpoint.object.Filter filter, Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
getIteratorPartitionsin interfacesailpoint.connector.Connector- Overrides:
getIteratorPartitionsin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
getObject
public sailpoint.object.ResourceObject getObject(String s, String s1, Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
getObjectin interfacesailpoint.connector.Connector- Throws:
sailpoint.connector.ConnectorException
-
getProxiedApplication
public sailpoint.object.Application getProxiedApplication(String s, Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
getProxiedApplicationin interfacesailpoint.connector.Connector- Overrides:
getProxiedApplicationin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
getRealConnector
protected sailpoint.connector.Connector getRealConnector() throws IllegalArgumentException
Retrieves the actual Connector to delegate to, optionally loading from a plugin if needed.If no plugin is specified, this will use the ConnectorFactory to get the real connector class using the built-in functionality used by such things as logical connectors.
The new connector instance will be cached and returned on subsequent calls.
- Returns:
- The connector class
- Throws:
IllegalArgumentException- if any failures to get the connector occur
-
getSupportedFeatures
public List<sailpoint.object.Application.Feature> getSupportedFeatures()
- Specified by:
getSupportedFeaturesin interfacesailpoint.connector.Connector- Overrides:
getSupportedFeaturesin classsailpoint.connector.AbstractConnector
-
getSystemIdentity
public String getSystemIdentity()
- Specified by:
getSystemIdentityin interfacesailpoint.connector.Connector- Overrides:
getSystemIdentityin classsailpoint.connector.AbstractConnector
-
getTargetApplication
public sailpoint.object.Application getTargetApplication()
- Specified by:
getTargetApplicationin interfacesailpoint.connector.Connector- Overrides:
getTargetApplicationin classsailpoint.connector.AbstractConnector
-
getTargetInstance
public String getTargetInstance()
- Specified by:
getTargetInstancein interfacesailpoint.connector.Connector- Overrides:
getTargetInstancein classsailpoint.connector.AbstractConnector
-
iterateObjects
public sailpoint.tools.CloseableIterator<sailpoint.object.ResourceObject> iterateObjects(String s, sailpoint.object.Filter filter, Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
iterateObjectsin interfacesailpoint.connector.Connector- Throws:
sailpoint.connector.ConnectorException
-
iterateObjects
public sailpoint.tools.CloseableIterator<sailpoint.object.ResourceObject> iterateObjects(sailpoint.object.Partition partition) throws sailpoint.connector.ConnectorException
- Specified by:
iterateObjectsin interfacesailpoint.connector.Connector- Overrides:
iterateObjectsin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorException
-
provision
public sailpoint.object.ProvisioningResult provision(sailpoint.object.ProvisioningPlan provisioningPlan) throws sailpoint.connector.ConnectorException, sailpoint.tools.GeneralException
- Specified by:
provisionin interfacesailpoint.connector.Connector- Overrides:
provisionin classsailpoint.connector.AbstractConnector- Throws:
sailpoint.connector.ConnectorExceptionsailpoint.tools.GeneralException
-
saveConnectorState
public void saveConnectorState()
- Overrides:
saveConnectorStatein classsailpoint.connector.AbstractConnector
-
saveConnectorState
public void saveConnectorState(Map<String,Object> stateMap)
- Overrides:
saveConnectorStatein classsailpoint.connector.AbstractConnector
-
setApplication
public void setApplication(sailpoint.object.Application application)
- Specified by:
setApplicationin interfacesailpoint.connector.Connector- Overrides:
setApplicationin classsailpoint.connector.AbstractConnector
-
setConnectorServices
public void setConnectorServices(openconnector.ConnectorServices connectorServices)
- Specified by:
setConnectorServicesin interfacesailpoint.connector.Connector- Overrides:
setConnectorServicesin classsailpoint.connector.CollectorServices
-
setInstance
public void setInstance(String s)
- Specified by:
setInstancein interfacesailpoint.connector.Connector- Overrides:
setInstancein classsailpoint.connector.AbstractConnector
-
setSystemIdentity
public void setSystemIdentity(String s)
- Specified by:
setSystemIdentityin interfacesailpoint.connector.Connector- Overrides:
setSystemIdentityin classsailpoint.connector.AbstractConnector
-
setTargetApplication
public void setTargetApplication(sailpoint.object.Application application)
- Specified by:
setTargetApplicationin interfacesailpoint.connector.Connector- Overrides:
setTargetApplicationin classsailpoint.connector.AbstractConnector
-
setTargetInstance
public void setTargetInstance(String s)
- Specified by:
setTargetInstancein interfacesailpoint.connector.Connector- Overrides:
setTargetInstancein classsailpoint.connector.AbstractConnector
-
shouldRetry
public boolean shouldRetry(Exception ex, String error, sailpoint.object.ProvisioningResult result)
- Overrides:
shouldRetryin classsailpoint.connector.AbstractConnector
-
supportsPartitionedDeltaAggregation
public boolean supportsPartitionedDeltaAggregation()
- Specified by:
supportsPartitionedDeltaAggregationin interfacesailpoint.connector.Connector- Overrides:
supportsPartitionedDeltaAggregationin classsailpoint.connector.AbstractConnector
-
testConfiguration
public void testConfiguration() throws sailpoint.connector.ConnectorException
- Specified by:
testConfigurationin interfacesailpoint.connector.Connector- Throws:
sailpoint.connector.ConnectorException
-
updateConnectorState
public void updateConnectorState(Map<String,Object> map)
- Specified by:
updateConnectorStatein interfaceopenconnector.ConnectorStateChangeListener
-
-