|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.evolveum.midpoint.provisioning.impl.ProvisioningServiceImpl
@Service(value="provisioningService") public class ProvisioningServiceImpl
Implementation of provisioning service. It is just a "dispatcher" that routes interface calls to appropriate places. E.g. the operations regarding resource definitions are routed directly to the repository, operations of shadow objects are routed to the shadow cache and so on. WORK IN PROGRESS There be dragons. Beware the dog. Do not trespass.
Constructor Summary | |
---|---|
ProvisioningServiceImpl()
|
Method Summary | ||
---|---|---|
|
addObject(PrismObject<T> object,
ProvisioningScriptsType scripts,
OperationResult parentResult)
Add new object. |
|
|
applyDefinition(ObjectDelta<T> delta,
OperationResult parentResult)
Applies appropriate definition to the shadow delta. |
|
|
applyDefinition(PrismObject<T> object,
OperationResult parentResult)
Applies appropriate definition to the shadow. |
|
|
countObjects(java.lang.Class<T> type,
ObjectQuery query,
OperationResult parentResult)
|
|
|
deleteObject(java.lang.Class<T> type,
java.lang.String oid,
ObjectOperationOption option,
ProvisioningScriptsType scripts,
OperationResult parentResult)
Deletes object with specified OID. |
|
java.util.Set<ConnectorType> |
discoverConnectors(ConnectorHostType hostType,
OperationResult parentResult)
Discovers local or remote connectors. |
|
RepositoryService |
getCacheRepositoryService()
Get the value of repositoryService. |
|
|
getObject(java.lang.Class<T> type,
java.lang.String oid,
java.util.Collection<ObjectOperationOption> options,
OperationResult parentResult)
Returns object for provided OID. |
|
ResourceTypeManager |
getResourceTypeManager()
|
|
ShadowCache |
getShadowCache()
|
|
java.util.List<PrismObject<? extends ResourceObjectShadowType>> |
listResourceObjects(java.lang.String resourceOid,
javax.xml.namespace.QName objectClass,
ObjectPaging paging,
OperationResult parentResult)
Lists resource objects. |
|
|
modifyObject(java.lang.Class<T> type,
java.lang.String oid,
java.util.Collection<? extends ItemDelta> modifications,
ProvisioningScriptsType scripts,
OperationResult parentResult)
Modifies object using relative change description. |
|
void |
postInit(OperationResult parentResult)
Finish initialization of provisioning system. |
|
|
searchObjects(java.lang.Class<T> type,
ObjectQuery query,
OperationResult parentResult)
Search for objects. |
|
|
searchObjectsIterative(java.lang.Class<T> type,
ObjectQuery query,
ResultHandler<T> handler,
OperationResult parentResult)
Search for objects iteratively. |
|
void |
setCacheRepositoryService(RepositoryService repositoryService)
Set the value of repositoryService Expected to be injected. |
|
void |
setResourceTypeManager(ResourceTypeManager resourceTypeManager)
|
|
void |
setShadowCache(ShadowCache shadowCache)
|
|
int |
synchronize(java.lang.String resourceOid,
Task task,
OperationResult parentResult)
Collect external changes on a resource and call the business logic with the accumulated change data. |
|
OperationResult |
testResource(java.lang.String resourceOid)
Test the resource connection and basic resource connector functionality. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ProvisioningServiceImpl()
Method Detail |
---|
public ShadowCache getShadowCache()
public void setShadowCache(ShadowCache shadowCache)
public ResourceTypeManager getResourceTypeManager()
public void setResourceTypeManager(ResourceTypeManager resourceTypeManager)
public RepositoryService getCacheRepositoryService()
public void setCacheRepositoryService(RepositoryService repositoryService)
repositoryService
- new value of repositoryServicepublic <T extends ObjectType> PrismObject<T> getObject(java.lang.Class<T> type, java.lang.String oid, java.util.Collection<ObjectOperationOption> options, OperationResult parentResult) throws ObjectNotFoundException, CommunicationException, SchemaException, ConfigurationException, SecurityViolationException
ProvisioningService
getObject
in interface ProvisioningService
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 policiespublic <T extends ObjectType> java.lang.String addObject(PrismObject<T> object, ProvisioningScriptsType scripts, OperationResult parentResult) throws ObjectAlreadyExistsException, SchemaException, CommunicationException, ObjectNotFoundException, ConfigurationException, SecurityViolationException
ProvisioningService
addObject
in interface ProvisioningService
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
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policiespublic int synchronize(java.lang.String resourceOid, Task task, OperationResult parentResult) throws ObjectNotFoundException, CommunicationException, SchemaException, ConfigurationException, SecurityViolationException
ProvisioningService
synchronize
in interface ProvisioningService
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 policiespublic <T extends ObjectType> java.util.List<PrismObject<T>> searchObjects(java.lang.Class<T> type, ObjectQuery query, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException
ProvisioningService
searchObjects
in interface ProvisioningService
query
- search queryparentResult
- parent OperationResult (in/out)
SchemaException
- unknown property used in search query
ConfigurationException
SecurityViolationException
- Security violation while communicating with the connector or processing provisioning policies
ObjectNotFoundException
CommunicationException
public <T extends ObjectType> int countObjects(java.lang.Class<T> type, ObjectQuery query, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException
countObjects
in interface ProvisioningService
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
SecurityViolationException
public <T extends ObjectType> java.lang.String modifyObject(java.lang.Class<T> type, java.lang.String oid, java.util.Collection<? extends ItemDelta> modifications, ProvisioningScriptsType scripts, OperationResult parentResult) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ObjectAlreadyExistsException
ProvisioningService
modifyObject
in interface ProvisioningService
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
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
public <T extends ObjectType> void deleteObject(java.lang.Class<T> type, java.lang.String oid, ObjectOperationOption option, ProvisioningScriptsType scripts, OperationResult parentResult) throws ObjectNotFoundException, CommunicationException, SchemaException, ConfigurationException, SecurityViolationException
ProvisioningService
Deletes object with specified OID.
Must fail if object with specified OID does not exists. Should be atomic.
deleteObject
in interface ProvisioningService
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
CommunicationException
SchemaException
public OperationResult testResource(java.lang.String resourceOid) throws ObjectNotFoundException
ProvisioningService
testResource
in interface ProvisioningService
resourceOid
- OID of resource to test
ObjectNotFoundException
- specified object does not existConnectorTestOperation
public java.util.List<PrismObject<? extends ResourceObjectShadowType>> listResourceObjects(java.lang.String resourceOid, javax.xml.namespace.QName objectClass, ObjectPaging paging, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException
ProvisioningService
listResourceObjects
in interface ProvisioningService
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)
SchemaException
- error handling resource schema
ObjectNotFoundException
- specified resource object does not exist
CommunicationException
- error communicating with the resource
ConfigurationException
public <T extends ObjectType> void searchObjectsIterative(java.lang.Class<T> type, ObjectQuery query, ResultHandler<T> handler, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException
ProvisioningService
searchObjectsIterative
in interface ProvisioningService
query
- search queryhandler
- result handlerparentResult
- parent OperationResult (in/out)
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
public java.util.Set<ConnectorType> discoverConnectors(ConnectorHostType hostType, OperationResult parentResult) throws CommunicationException
ProvisioningService
discoverConnectors
in interface ProvisioningService
hostType
- definition of a connector host or nullparentResult
- parentResult parent OperationResult (in/out)
CommunicationException
- error connecting to a remote hostpublic <T extends ObjectType> void applyDefinition(ObjectDelta<T> delta, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException
ProvisioningService
applyDefinition
in interface ProvisioningService
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
public <T extends ObjectType> void applyDefinition(PrismObject<T> object, OperationResult parentResult) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException
ProvisioningService
applyDefinition
in interface ProvisioningService
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
public void postInit(OperationResult parentResult)
ProvisioningService
postInit
in interface ProvisioningService
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |