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.ResourceObject
authenticate(String s, String s1)
sailpoint.object.ResourceObject
authenticate(String s, Map<String,Object> map)
sailpoint.object.ProvisioningResult
checkStatus(String s)
void
destroy(Map<String,Object> map)
Map<String,Object>
discoverApplicationAttributes(Map<String,Object> map)
sailpoint.object.Schema
discoverSchema(String s, Map<String,Object> map)
Map
doHealthCheck(Map<String,Object> map)
sailpoint.object.Application
getApplication()
openconnector.ConnectorServices
getConnectorServices()
String
getConnectorType()
Deprecated.List<sailpoint.object.AttributeDefinition>
getDefaultAttributes()
List<sailpoint.object.Schema>
getDefaultSchemas()
Map<String,Object>
getDependencyData()
String
getInstance()
List<sailpoint.object.Partition>
getIteratorPartitions(String s, int i, sailpoint.object.Filter filter, Map<String,Object> map)
sailpoint.object.ResourceObject
getObject(String s, String s1, Map<String,Object> map)
sailpoint.object.Application
getProxiedApplication(String s, Map<String,Object> map)
protected sailpoint.connector.Connector
getRealConnector()
Retrieves the actual Connector to delegate to, optionally loading from a plugin if needed.List<sailpoint.object.Application.Feature>
getSupportedFeatures()
String
getSystemIdentity()
sailpoint.object.Application
getTargetApplication()
String
getTargetInstance()
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.ProvisioningResult
provision(sailpoint.object.ProvisioningPlan provisioningPlan)
void
saveConnectorState()
void
saveConnectorState(Map<String,Object> stateMap)
void
setApplication(sailpoint.object.Application application)
void
setConnectorServices(openconnector.ConnectorServices connectorServices)
void
setInstance(String s)
void
setSystemIdentity(String s)
void
setTargetApplication(sailpoint.object.Application application)
void
setTargetInstance(String s)
boolean
shouldRetry(Exception ex, String error, sailpoint.object.ProvisioningResult result)
boolean
supportsPartitionedDeltaAggregation()
void
testConfiguration()
void
updateConnectorState(Map<String,Object> map)
-
Methods inherited from class sailpoint.connector.AbstractConnector
buildResourceObjectFromMap, defaultMergeMaps, defaultTransformObject, defaultTransformObject, defaultTransformObject, filterPermissions, filterPermissions, getAttributeNames, getAttributesToRetrieve, getChangeLogExtract, 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:
authenticate
in interfacesailpoint.connector.Connector
- Overrides:
authenticate
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
sailpoint.connector.ObjectNotFoundException
sailpoint.connector.AuthenticationFailedException
sailpoint.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:
authenticate
in interfacesailpoint.connector.Connector
- Overrides:
authenticate
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
sailpoint.connector.ObjectNotFoundException
sailpoint.connector.AuthenticationFailedException
sailpoint.connector.ExpiredPasswordException
-
checkStatus
public sailpoint.object.ProvisioningResult checkStatus(String s) throws sailpoint.connector.ConnectorException, sailpoint.tools.GeneralException
- Specified by:
checkStatus
in interfacesailpoint.connector.Connector
- Overrides:
checkStatus
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
sailpoint.tools.GeneralException
-
destroy
public void destroy(Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
destroy
in interfacesailpoint.connector.Connector
- Overrides:
destroy
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
-
discoverApplicationAttributes
public Map<String,Object> discoverApplicationAttributes(Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
discoverApplicationAttributes
in interfacesailpoint.connector.Connector
- Overrides:
discoverApplicationAttributes
in 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:
discoverSchema
in interfacesailpoint.connector.Connector
- Overrides:
discoverSchema
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
-
doHealthCheck
public Map doHealthCheck(Map<String,Object> map) throws sailpoint.connector.ConnectorException
- Specified by:
doHealthCheck
in interfacesailpoint.connector.Connector
- Overrides:
doHealthCheck
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
-
getApplication
public sailpoint.object.Application getApplication()
- Specified by:
getApplication
in interfacesailpoint.connector.Connector
- Overrides:
getApplication
in classsailpoint.connector.AbstractConnector
-
getConnectorServices
public openconnector.ConnectorServices getConnectorServices()
- Specified by:
getConnectorServices
in interfacesailpoint.connector.Connector
- Overrides:
getConnectorServices
in classsailpoint.connector.CollectorServices
-
getConnectorType
@Deprecated public String getConnectorType()
Deprecated.- Specified by:
getConnectorType
in interfacesailpoint.connector.Connector
- Overrides:
getConnectorType
in classsailpoint.connector.AbstractConnector
-
getDefaultAttributes
public List<sailpoint.object.AttributeDefinition> getDefaultAttributes()
- Specified by:
getDefaultAttributes
in interfacesailpoint.connector.Connector
- Overrides:
getDefaultAttributes
in classsailpoint.connector.AbstractConnector
-
getDefaultSchemas
public List<sailpoint.object.Schema> getDefaultSchemas()
- Specified by:
getDefaultSchemas
in interfacesailpoint.connector.Connector
- Overrides:
getDefaultSchemas
in classsailpoint.connector.AbstractConnector
-
getDependencyData
public Map<String,Object> getDependencyData() throws sailpoint.connector.ConnectorException
- Specified by:
getDependencyData
in interfacesailpoint.connector.Connector
- Overrides:
getDependencyData
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
-
getInstance
public String getInstance()
- Specified by:
getInstance
in interfacesailpoint.connector.Connector
- Overrides:
getInstance
in 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:
getIteratorPartitions
in interfacesailpoint.connector.Connector
- Overrides:
getIteratorPartitions
in 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:
getObject
in 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:
getProxiedApplication
in interfacesailpoint.connector.Connector
- Overrides:
getProxiedApplication
in 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:
getSupportedFeatures
in interfacesailpoint.connector.Connector
- Overrides:
getSupportedFeatures
in classsailpoint.connector.AbstractConnector
-
getSystemIdentity
public String getSystemIdentity()
- Specified by:
getSystemIdentity
in interfacesailpoint.connector.Connector
- Overrides:
getSystemIdentity
in classsailpoint.connector.AbstractConnector
-
getTargetApplication
public sailpoint.object.Application getTargetApplication()
- Specified by:
getTargetApplication
in interfacesailpoint.connector.Connector
- Overrides:
getTargetApplication
in classsailpoint.connector.AbstractConnector
-
getTargetInstance
public String getTargetInstance()
- Specified by:
getTargetInstance
in interfacesailpoint.connector.Connector
- Overrides:
getTargetInstance
in 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:
iterateObjects
in 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:
iterateObjects
in interfacesailpoint.connector.Connector
- Overrides:
iterateObjects
in 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:
provision
in interfacesailpoint.connector.Connector
- Overrides:
provision
in classsailpoint.connector.AbstractConnector
- Throws:
sailpoint.connector.ConnectorException
sailpoint.tools.GeneralException
-
saveConnectorState
public void saveConnectorState()
- Overrides:
saveConnectorState
in classsailpoint.connector.AbstractConnector
-
saveConnectorState
public void saveConnectorState(Map<String,Object> stateMap)
- Overrides:
saveConnectorState
in classsailpoint.connector.AbstractConnector
-
setApplication
public void setApplication(sailpoint.object.Application application)
- Specified by:
setApplication
in interfacesailpoint.connector.Connector
- Overrides:
setApplication
in classsailpoint.connector.AbstractConnector
-
setConnectorServices
public void setConnectorServices(openconnector.ConnectorServices connectorServices)
- Specified by:
setConnectorServices
in interfacesailpoint.connector.Connector
- Overrides:
setConnectorServices
in classsailpoint.connector.CollectorServices
-
setInstance
public void setInstance(String s)
- Specified by:
setInstance
in interfacesailpoint.connector.Connector
- Overrides:
setInstance
in classsailpoint.connector.AbstractConnector
-
setSystemIdentity
public void setSystemIdentity(String s)
- Specified by:
setSystemIdentity
in interfacesailpoint.connector.Connector
- Overrides:
setSystemIdentity
in classsailpoint.connector.AbstractConnector
-
setTargetApplication
public void setTargetApplication(sailpoint.object.Application application)
- Specified by:
setTargetApplication
in interfacesailpoint.connector.Connector
- Overrides:
setTargetApplication
in classsailpoint.connector.AbstractConnector
-
setTargetInstance
public void setTargetInstance(String s)
- Specified by:
setTargetInstance
in interfacesailpoint.connector.Connector
- Overrides:
setTargetInstance
in classsailpoint.connector.AbstractConnector
-
shouldRetry
public boolean shouldRetry(Exception ex, String error, sailpoint.object.ProvisioningResult result)
- Overrides:
shouldRetry
in classsailpoint.connector.AbstractConnector
-
supportsPartitionedDeltaAggregation
public boolean supportsPartitionedDeltaAggregation()
- Specified by:
supportsPartitionedDeltaAggregation
in interfacesailpoint.connector.Connector
- Overrides:
supportsPartitionedDeltaAggregation
in classsailpoint.connector.AbstractConnector
-
testConfiguration
public void testConfiguration() throws sailpoint.connector.ConnectorException
- Specified by:
testConfiguration
in interfacesailpoint.connector.Connector
- Throws:
sailpoint.connector.ConnectorException
-
updateConnectorState
public void updateConnectorState(Map<String,Object> map)
- Specified by:
updateConnectorState
in interfaceopenconnector.ConnectorStateChangeListener
-
-