|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ProvisioningService
Provisioning Service Interface.
Status: public Stability: DRAFT, some changes are likely
This service retrieves information about resource objects and resources and handles changes to resource objects. Implementations of this interface will apply the changes to accounts, groups and other similar objects to the target resources. It also provides information about connectors and similar configuration of access to the resources.
Supported object types:
TODO: better documentation
Method Summary | ||
---|---|---|
|
addObject(PrismObject<T> object,
ProvisioningScriptsType scripts,
ProvisioningOperationOptions options,
Task task,
OperationResult parentResult)
Add new object. |
|
|
applyDefinition(ObjectDelta<T> delta,
OperationResult parentResult)
Applies appropriate definition to the shadow delta. |
|
|
applyDefinition(PrismObject<T> shadow,
OperationResult parentResult)
Applies appropriate definition to the shadow. |
|
|
countObjects(Class<T> type,
ObjectQuery query,
OperationResult parentResult)
|
|
|
deleteObject(Class<T> type,
String oid,
ProvisioningOperationOptions option,
ProvisioningScriptsType scripts,
Task task,
OperationResult parentResult)
Deletes object with specified OID. |
|
Set<ConnectorType> |
discoverConnectors(ConnectorHostType hostType,
OperationResult parentResult)
Discovers local or remote connectors. |
|
|
finishOperation(PrismObject<T> object,
ProvisioningOperationOptions options,
Task task,
OperationResult parentResult)
|
|
|
getObject(Class<T> type,
String oid,
GetOperationOptions options,
OperationResult parentResult)
Returns object for provided OID. |
|
List<PrismObject<? extends ResourceObjectShadowType>> |
listResourceObjects(String resourceOid,
QName objectClass,
ObjectPaging paging,
OperationResult parentResult)
Lists resource objects. |
|
|
modifyObject(Class<T> type,
String oid,
Collection<? extends ItemDelta> modifications,
ProvisioningScriptsType scripts,
ProvisioningOperationOptions options,
Task task,
OperationResult parentResult)
Modifies object using relative change description. |
|
void |
postInit(OperationResult parentResult)
Finish initialization of provisioning system. |
|
|
searchObjects(Class<T> type,
ObjectQuery query,
OperationResult parentResult)
Search for objects. |
|
|
searchObjectsIterative(Class<T> type,
ObjectQuery query,
ResultHandler<T> handler,
OperationResult parentResult)
Search for objects iteratively. |
|
int |
synchronize(String resourceOid,
Task task,
OperationResult parentResult)
Collect external changes on a resource and call the business logic with the accumulated change data. |
|
OperationResult |
testResource(String resourceOid)
Test the resource connection and basic resource connector functionality. |
Method Detail |
---|
<T extends ObjectType> PrismObject<T> getObject(Class<T> type, String oid, GetOperationOptions options, OperationResult parentResult) throws ObjectNotFoundException, CommunicationException, SchemaException, ConfigurationException, SecurityViolationException
type
- the type (class) of object to getoid
- OID of the object to getparentResult
- parent OperationResult (in/out)
ObjectNotFoundException
- requested object does not exist
CommunicationException
- error communicating with the resource
SchemaException
- error dealing with resource schema
ConfigurationException
- Wrong resource or connector configuration
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policies
IllegalArgumentException
- wrong OID format, etc.
GenericConnectorException
- unknown connector framework error<T extends ObjectType> String addObject(PrismObject<T> object, ProvisioningScriptsType scripts, ProvisioningOperationOptions options, Task task, OperationResult parentResult) throws ObjectAlreadyExistsException, SchemaException, CommunicationException, ObjectNotFoundException, ConfigurationException, SecurityViolationException
object
- object to createscripts
- scripts to execute before/after the operationparentResult
- parent OperationResult (in/out)
ObjectAlreadyExistsException
- object with specified identifiers already exists, cannot add
SchemaException
- error dealing with resource schema, e.g. schema violation
CommunicationException
- error communicating with the resource
ObjectNotFoundException
- appropriate connector object was not found
ConfigurationException
IllegalArgumentException
- wrong OID format, etc.
GenericConnectorException
- unknown connector framework error
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policiesint synchronize(String resourceOid, Task task, OperationResult parentResult) throws ObjectNotFoundException, CommunicationException, SchemaException, ConfigurationException, SecurityViolationException
resourceOid
- OID of the resource for which to attempt synchronizationparentResult
- parent OperationResult (in/out)
ObjectNotFoundException
- specified resource definition (OID) does not exist
CommunicationException
- error communicating with the resource
SchemaException
- error dealing with resource schema
ConfigurationException
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policies
GenericConnectorException
- unknown connector framework error<T extends ObjectType> List<PrismObject<T>> searchObjects(Class<T> type, ObjectQuery query, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException
query
- search querypaging
- paging specification to limit operation result (optional)parentResult
- parent OperationResult (in/out)
IllegalArgumentException
- wrong object type
GenericConnectorException
- unknown connector framework error
SchemaException
- unknown property used in search query
ConfigurationException
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policies
ObjectNotFoundException
CommunicationException
<T extends ObjectType> int countObjects(Class<T> type, ObjectQuery query, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
SecurityViolationException
<T extends ObjectType> void searchObjectsIterative(Class<T> type, ObjectQuery query, ResultHandler<T> handler, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException
query
- search querypaging
- paging specification to limit operation result (optional)parentResult
- parent OperationResult (in/out)handler
- result handler
IllegalArgumentException
- wrong object type
GenericConnectorException
- unknown connector framework error
SchemaException
- unknown property used in search query
ObjectNotFoundException
- appropriate connector object was not found
ConfigurationException
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policies
CommunicationException
<T extends ObjectType> String modifyObject(Class<T> type, String oid, Collection<? extends ItemDelta> modifications, ProvisioningScriptsType scripts, ProvisioningOperationOptions options, Task task, OperationResult parentResult) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ObjectAlreadyExistsException
scripts
- scripts that should be executed before of after operationparentResult
- parent OperationResult (in/out)
ObjectNotFoundException
- specified object does not exist
SchemaException
- resulting object would violate the schema
IllegalArgumentException
- wrong OID format, described change is not applicable
GenericConnectorException
- unknown connector framework error
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policies
ObjectAlreadyExistsException
- if resulting object would have name which already exists in another object of the same type
CommunicationException
ConfigurationException
<T extends ObjectType> void deleteObject(Class<T> type, String oid, ProvisioningOperationOptions option, ProvisioningScriptsType scripts, Task task, OperationResult parentResult) throws ObjectNotFoundException, CommunicationException, SchemaException, ConfigurationException, SecurityViolationException
Deletes object with specified OID.
Must fail if object with specified OID does not exists. Should be atomic.
oid
- OID of object to deletescripts
- scripts that should be executed before of after operationparentResult
- parent OperationResult (in/out)
ObjectNotFoundException
- specified object does not exist
ConfigurationException
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policies
IllegalArgumentException
- wrong OID format, described change is not applicable
GenericConnectorException
- unknown connector framework error
CommunicationException
SchemaException
OperationResult testResource(String resourceOid) throws ObjectNotFoundException
resourceOid
- OID of resource to test
ObjectNotFoundException
- specified object does not exist
IllegalArgumentException
- wrong OID format
GenericConnectorException
- unknown connector framework errorConnectorTestOperation
Set<ConnectorType> discoverConnectors(ConnectorHostType hostType, OperationResult parentResult) throws CommunicationException
hostType
- definition of a connector host or nullparentResult
- parentResult parent OperationResult (in/out)
CommunicationException
- error connecting to a remote hostList<PrismObject<? extends ResourceObjectShadowType>> listResourceObjects(String resourceOid, QName objectClass, ObjectPaging paging, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException
resourceOid
- OID of the resource to fetch objects fromobjectClass
- Object class of the objects to fetchpaging
- paging specification to limit operation result (optional)parentResult
- parent OperationResult (in/out)
ObjectNotFoundException
- specified resource object does not exist
SchemaException
- error handling resource schema
CommunicationException
- error communicating with the resource
ConfigurationException
<T extends ResourceObjectShadowType> void finishOperation(PrismObject<T> object, ProvisioningOperationOptions options, Task task, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, ObjectAlreadyExistsException, SecurityViolationException
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
ObjectAlreadyExistsException
SecurityViolationException
<T extends ObjectType> void applyDefinition(ObjectDelta<T> delta, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
<T extends ObjectType> void applyDefinition(PrismObject<T> shadow, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
void postInit(OperationResult parentResult)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |