Interface MidpointFunctions
-
public interface MidpointFunctions
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
MidpointFunctions.TriggerCustomizer
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description <T extends ObjectType>
StringaddObject(PrismObject<T> newObject)
<T extends ObjectType>
StringaddObject(PrismObject<T> newObject, ModelExecuteOptions options)
<T extends ObjectType>
StringaddObject(T newObject)
<T extends ObjectType>
StringaddObject(T newObject, ModelExecuteOptions options)
default <O extends ObjectType>
voidaddRecomputeTrigger(PrismObject<O> object, Long timestamp)
<O extends ObjectType>
voidaddRecomputeTrigger(PrismObject<O> object, Long timestamp, MidpointFunctions.TriggerCustomizer triggerCustomizer)
default <O extends ObjectType>
voidaddRecomputeTrigger(O object, Long timestamp)
default <O extends ObjectType>
voidaddRecomputeTrigger(O object, Long timestamp, MidpointFunctions.TriggerCustomizer triggerCustomizer)
<T extends ObjectType>
voidapplyDefinition(T object)
@NotNull Collection<PrismValue>
collectAssignedFocusMappingsResults(@NotNull ItemPath path)
Returns all non-negative values from all focus mappings (targeted to given path) from all non-negative evaluated assignments.ExtensionType
collectExtensions(AssignmentPathType path, int startAt)
<F extends FocusType>
StringcomputeProjectionLifecycle(F focus, ShadowType shadow, ResourceType resource)
Default function used to compute projection lifecycle.<T> Integer
countAccounts(ResourceType resourceType, String attributeName, T attributeValue)
<T> Integer
countAccounts(ResourceType resourceType, QName attributeName, T attributeValue)
<T> Integer
countAccounts(String resourceOid, QName attributeName, T attributeValue)
<T extends ObjectType>
intcountObjects(Class<T> type, ObjectQuery query)
Count objects.<T extends ObjectType>
intcountObjects(Class<T> type, ObjectQuery query, Collection<SelectorOptions<GetOperationOptions>> options)
Count objects.String
createAccountActivationLink(UserType userType)
<T extends ObjectType>
TcreateEmptyObject(Class<T> type)
Creates empty prism object of specified type in memory.<T extends ObjectType>
TcreateEmptyObjectWithName(Class<T> type, PolyString name)
Creates empty prism object of specified type and with specified name in memory.<T extends ObjectType>
TcreateEmptyObjectWithName(Class<T> type, PolyStringType name)
Creates empty prism object of specified type and with specified name in memory.<T extends ObjectType>
TcreateEmptyObjectWithName(Class<T> type, String name)
Creates empty prism object of specified type and with specified name in memory.String
createPasswordResetLink(UserType userType)
void
createRecomputeTrigger(Class<? extends ObjectType> type, String oid)
Goes directly to repository service.String
createRegistrationConfirmationLink(UserType userType)
@Nullable String
createWorkItemCompletionLink(@NotNull WorkItemId workItemId)
Returns a link where given work item can be completed.<T extends ObjectType>
voiddeleteObject(Class<T> type, String oid)
<T extends ObjectType>
voiddeleteObject(Class<T> type, String oid, ModelExecuteOptions options)
<C extends Containerable>
S_ItemEntrydeltaFor(Class<C> objectClass)
String
describeResourceObjectSet(ResourceObjectSetType set)
Object
executeAdHocProvisioningScript(ResourceType resource, String language, String code)
Object
executeAdHocProvisioningScript(String resourceOid, String language, String code)
void
executeChanges(ObjectDelta<? extends ObjectType>... deltas)
Execute the provided object deltas.void
executeChanges(Collection<ObjectDelta<? extends ObjectType>> deltas)
Execute the provided object deltas.void
executeChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options)
Execute the provided object deltas.TaskType
executeChangesAsynchronously(Collection<ObjectDelta<?>> deltas, ModelExecuteOptions options, String templateTaskOid)
TaskType
executeChangesAsynchronously(Collection<ObjectDelta<?>> deltas, ModelExecuteOptions options, String templateTaskOid, com.evolveum.midpoint.task.api.Task opTask, OperationResult result)
<O extends ObjectType>
ArchetypeTypegetArchetype(O object)
Deprecated.<O extends ObjectType>
StringgetArchetypeOid(O object)
Deprecated.<O extends ObjectType>
@NotNull List<String>getArchetypeOids(O object)
<O extends ObjectType>
@NotNull List<ArchetypeType>getArchetypes(O object)
<T> @NotNull ResourceAttributeDefinition<T>
getAttributeDefinition(PrismObject<ResourceType> resource, String objectClassName, String attributeName)
<T> @NotNull ResourceAttributeDefinition<T>
getAttributeDefinition(PrismObject<ResourceType> resource, QName objectClassName, QName attributeName)
String
getChannel()
String
getConst(String name)
@Nullable CaseType
getCorrelationCaseForShadow(@Nullable ShadowType shadow)
Returns a correlation case for given shadow.OperationResult
getCurrentResult()
OperationResult
getCurrentResult(String operationName)
com.evolveum.midpoint.task.api.Task
getCurrentTask()
<F extends ObjectType>
ModelElementContext<F>getFocusContext()
<F extends FocusType>
List<F>getFocusesByCorrelationRule(Class<F> type, String resourceOid, ShadowKindType kind, String intent, ShadowType shadow)
To be used e.g.ShadowType
getLinkedShadow(FocusType focus, ResourceType resource)
ShadowType
getLinkedShadow(FocusType focus, ResourceType resource, boolean repositoryObjectOnly)
ShadowType
getLinkedShadow(FocusType focus, String resourceOid)
ShadowType
getLinkedShadow(FocusType focus, String resourceOid, boolean repositoryObjectOnly)
ShadowType
getLinkedShadow(FocusType focus, String resourceOid, ShadowKindType kind, String intent)
ShadowType
getLinkedShadow(FocusType focus, String resourceOid, ShadowKindType kind, String intent, boolean repositoryObjectOnly)
@NotNull List<ShadowType>
getLinkedShadows(FocusType focus, String resourceOid)
@NotNull List<ShadowType>
getLinkedShadows(FocusType focus, String resourceOid, boolean repositoryObjectOnly)
Collection<UserType>
getManagers(UserType user)
Collection<UserType>
getManagers(UserType user, String orgType, boolean allowSelf)
Collection<UserType>
getManagersByOrgType(UserType user, String orgType)
Collection<UserType>
getManagersOfOrg(String orgOid)
Collection<String>
getManagersOids(UserType user)
Collection<String>
getManagersOidsExceptUser(@NotNull Collection<ObjectReferenceType> userRefList)
Collection<String>
getManagersOidsExceptUser(UserType user)
<V extends PrismValue,D extends ItemDefinition<?>>
Mapping<V,D>getMapping()
List<UserType>
getMembers(String orgOid)
List<ObjectReferenceType>
getMembersAsReferences(String orgOid)
<F extends ObjectType>
ModelContext<F>getModelContext()
<T extends ObjectType>
TgetObject(Class<T> type, String oid)
Returns object for provided OID.<T extends ObjectType>
TgetObject(Class<T> type, String oid, Collection<SelectorOptions<GetOperationOptions>> options)
Returns object for provided OID.<O extends ObjectType,T>
List<O>getObjectsInConflictOnPropertyValue(O objectType, String propertyPathString, T propertyValue, boolean getAllConflicting)
@NotNull OptimizingTriggerCreator
getOptimizingTriggerCreator(long fireAfter, long safetyMargin)
OrgType
getOrgByName(String name)
OrgType
getOrgByOid(String oid)
Collection<String>
getOrgUnits(UserType user)
Collection<String>
getOrgUnits(UserType user, QName relation)
OrgType
getParentOrgByArchetype(ObjectType object, String archetypeOid)
Returns parent org of the specified object that have a specific archetype.OrgType
getParentOrgByOrgType(ObjectType object, String orgType)
Returns parent org of the specified object that have a specific orgType.Collection<OrgType>
getParentOrgs(ObjectType object)
Returns all parent orgs of the specified object.Collection<OrgType>
getParentOrgs(ObjectType object, String relation, String orgType)
Returns parent orgs of the specified object that have a specific relation and orgType.Collection<OrgType>
getParentOrgs(ObjectType object, QName relation, String orgType)
Returns parent orgs of the specified object that have a specific relation and orgType.Collection<OrgType>
getParentOrgsByRelation(ObjectType object, String relation)
Returns parent orgs of the specified object that have a specific relation.Collection<OrgType>
getParentOrgsByRelation(ObjectType object, QName relation)
Returns parent orgs of the specified object that have a specific relation.String
getPlaintext(ProtectedStringType user)
String
getPlaintextAccountPassword(ShadowType account)
String
getPlaintextAccountPasswordFromDelta(ObjectDelta<? extends ShadowType> delta)
String
getPlaintextUserPassword(FocusType user)
String
getPlaintextUserPasswordFromDeltas(List<ObjectDelta<? extends FocusType>> deltas)
com.evolveum.midpoint.security.api.MidPointPrincipal
getPrincipal()
Returns principal representing the user whose identity is used to execute the expression.String
getPrincipalOid()
Returns OID of the current principal.PrismContext
getPrismContext()
ModelProjectionContext
getProjectionContext()
Protector
getProtector()
RelationRegistry
getRelationRegistry()
com.evolveum.midpoint.repo.api.RepositoryService
getRepositoryService()
ObjectDeltaType
getResourceDelta(ModelContext context, String resourceOid)
Returns aggregated delta that is to be executed on a given resource.long
getSequenceCounter(String sequenceOid)
List<ShadowType>
getShadowsToActivate(Collection<? extends ModelElementContext> projectionContexts)
Used for account activation notifier to collect all shadows which are going to be activated.UserType
getUserByOid(String oid)
CaseService
getWorkflowService()
default <O extends ObjectType>
booleanhasArchetype(O object, String archetypeOid)
<F extends ObjectType>
booleanhasLinkedAccount(String resourceOid)
boolean
isDirectlyAssigned(ObjectType target)
<F extends FocusType>
booleanisDirectlyAssigned(F focusType, ObjectType target)
<F extends FocusType>
booleanisDirectlyAssigned(F focusType, String targetOid)
boolean
isDirectlyAssigned(String targetOid)
Boolean
isEvaluateNew()
Returns indication whether a script code is evaluating a new value.boolean
isFullShadow()
boolean
isManager(UserType user)
Returns true if user is a manager of any organizational unit.boolean
isManagerOf(UserType user, String orgOid)
Returns true if user is a manager of specified organizational unit.boolean
isManagerOfOrgType(UserType user, String orgType)
boolean
isMemberOf(UserType user, String orgOid)
boolean
isProjectionExists()
<T> boolean
isUniqueAccountValue(ResourceType resourceType, ShadowType shadowType, String attributeName, T attributeValue)
<T> boolean
isUniquePropertyValue(ObjectType objectType, String propertyPathString, T propertyValue)
<T extends ObjectType>
voidmodifyObject(ObjectDelta<T> modifyDelta)
<T extends ObjectType>
voidmodifyObject(ObjectDelta<T> modifyDelta, ModelExecuteOptions options)
Map<String,String>
parseXmlToMap(String xml)
Returns a map from the translated xml attribute - value pairs.<F extends ObjectType>
ModelContext<F>previewChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options)
<F extends FocusType>
voidrecompute(Class<F> type, String oid)
Recomputes focal object with the specified OID.ShadowType
resolveEntitlement(ShadowAssociationType shadowAssociationType)
<T extends ObjectType>
TresolveReference(ObjectReferenceType reference)
<T extends ObjectType>
TresolveReferenceIfExists(ObjectReferenceType reference)
<T extends ObjectType>
TsearchObjectByName(Class<T> type, PolyString name)
Search for objects by name.<T extends ObjectType>
TsearchObjectByName(Class<T> type, PolyStringType name)
Search for objects by name.<T extends ObjectType>
TsearchObjectByName(Class<T> type, String name)
Search for objects by name.<T extends ObjectType>
List<T>searchObjects(Class<T> type, ObjectQuery query)
Search for objects.<T extends ObjectType>
List<T>searchObjects(Class<T> type, ObjectQuery query, Collection<SelectorOptions<GetOperationOptions>> options)
Search for objects.<T extends ObjectType>
voidsearchObjectsIterative(Class<T> type, ObjectQuery query, ResultHandler<T> handler)
Search for objects in iterative fashion (using callback).<T extends ObjectType>
voidsearchObjectsIterative(Class<T> type, ObjectQuery query, ResultHandler<T> handler, Collection<SelectorOptions<GetOperationOptions>> options)
Search for objects in iterative fashion (using callback).<F extends FocusType>
PrismObject<F>searchShadowOwner(String accountOid)
TaskType
submitTaskFromTemplate(String templateTaskOid, List<Item<?,?>> extensionItems)
TaskType
submitTaskFromTemplate(String templateTaskOid, Map<QName,Object> extensionValues)
OperationResult
testResource(String resourceOid)
Test the resource connection and basic resource connector functionality.List<String>
toList(String... s)
String
translate(LocalizableMessage message)
String
translate(LocalizableMessageType message)
ModelContext
unwrapModelContext(LensContextType lensContextType)
LensContextType
wrapModelContext(ModelContext<?> lensContext)
-
-
-
Method Detail
-
createEmptyObject
<T extends ObjectType> T createEmptyObject(Class<T> type) throws SchemaException
Creates empty prism object of specified type in memory. This is used to construct Java instances of object before they are added to the repository.
Please note that this method constructs the object in memory only. If you intend to create an object in repository or on the resource you need to populate this object with data and then invoke the addObject or executeChanges method.
- Parameters:
type
- Class of the object to create- Returns:
- empty object in memory
- Throws:
SchemaException
- schema error instantiating the object (e.g. attempt to instantiate abstract type).
-
createEmptyObjectWithName
<T extends ObjectType> T createEmptyObjectWithName(Class<T> type, String name) throws SchemaException
Creates empty prism object of specified type and with specified name in memory. This is used to construct Java instances of object before they are added to the repository. The 'name' property of the new object will be set to a specified value.
Please note that this method constructs the object in memory only. If you intend to create an object in repository or on the resource you need to populate this object with data and then invoke the addObject or executeChanges method.
- Parameters:
type
- Class of the object to createname
- Name of the object- Returns:
- empty object in memory
- Throws:
SchemaException
- schema error instantiating the object (e.g. attempt to instantiate abstract type).
-
createEmptyObjectWithName
<T extends ObjectType> T createEmptyObjectWithName(Class<T> type, PolyString name) throws SchemaException
Creates empty prism object of specified type and with specified name in memory. This is used to construct Java instances of object before they are added to the repository. The 'name' property of the new object will be set to a specified value.
Please note that this method constructs the object in memory only. If you intend to create an object in repository or on the resource you need to populate this object with data and then invoke the addObject or executeChanges method.
- Parameters:
type
- Class of the object to createname
- Name of the object- Returns:
- empty object in memory
- Throws:
SchemaException
- schema error instantiating the object (e.g. attempt to instantiate abstract type).
-
createEmptyObjectWithName
<T extends ObjectType> T createEmptyObjectWithName(Class<T> type, PolyStringType name) throws SchemaException
Creates empty prism object of specified type and with specified name in memory. This is used to construct Java instances of object before they are added to the repository. The 'name' property of the new object will be set to a specified value.
Please note that this method constructs the object in memory only. If you intend to create an object in repository or on the resource you need to populate this object with data and then invoke the addObject or executeChanges method.
- Parameters:
type
- Class of the object to createname
- Name of the object- Returns:
- empty object in memory
- Throws:
SchemaException
- schema error instantiating the object (e.g. attempt to instantiate abstract type).
-
resolveReference
<T extends ObjectType> T resolveReference(ObjectReferenceType reference) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
resolveReferenceIfExists
<T extends ObjectType> T resolveReferenceIfExists(ObjectReferenceType reference) throws SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
getObject
<T extends ObjectType> T getObject(Class<T> type, String oid, Collection<SelectorOptions<GetOperationOptions>> options) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Returns object for provided OID. It retrieves the object from an appropriate source for an object type (e.g. internal repository, resource or both), merging data as necessary, processing any policies, caching mechanisms, etc. This can be influenced by using options.
Fails if object with the OID does not exist.
- Parameters:
type
- (class) of an object to getoid
- OID of the object to getoptions
- options influencing the retrieval and processing of the object- Returns:
- Retrieved object
- Throws:
ObjectNotFoundException
- requested object does not existSchemaException
- the object is not schema compliantSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- missing required parameter, wrong OID format, etc.ClassCastException
- OID represents object of a type incompatible with requested typeSystemException
- unknown error from underlying layers or other unexpected stateExpressionEvaluationException
-
getObject
<T extends ObjectType> T getObject(Class<T> type, String oid) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Returns object for provided OID. It retrieves the object from an appropriate source for an object type (e.g. internal repository, resource or both), merging data as necessary, processing any policies, caching mechanisms, etc.
Fails if object with the OID does not exist.
- Parameters:
type
- (class) of an object to getoid
- OID of the object to get- Returns:
- Retrieved object
- Throws:
ObjectNotFoundException
- requested object does not existSchemaException
- the object is not schema compliantSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- missing required parameter, wrong OID format, etc.ClassCastException
- OID represents object of a type incompatible with requested typeSystemException
- unknown error from underlying layers or other unexpected stateExpressionEvaluationException
-
executeChanges
void executeChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
Execute the provided object deltas.
The operation executes the provided object deltas. All deltas must relate to analogous objects (e.g. user and linked accounts). The implementation may throw an error if the objects are not analogous. The implementation also implicitly links the objects (mark them to be analogous) if such a link is part of the data model. E.g. the implementation links all accounts to the user if they are passed in a single delta collection. This is especially useful if the account deltas are ADD deltas without OID and therefore cannot be linked explicitly.
There must be no more than one delta for each object. The order of execution is not defined and the implementation is free to determine the correct or most suitable ordering.
The OID provided in ADD deltas may be empty. In that case the OID will be assigned by the implementation and the OIDs will be set in the deltas after the operation is completed.
Execution of ADD deltas should fail if such object already exists (if object with the provided OID already exists). Execution of MODIFY and DELETE deltas should fail if such objects do not exist.
The operation may fail if provided OIDs are in an unusable format for the storage. Generating own OIDs and providing them to this method is not recommended for normal operation.
There are no explicit atomicity guarantees for the operations. Some of the operations may pass, some may fail or even fail partially. The consistency of the data and state are not based on operation atomicity but rather a data model that can "repair" inconsistencies.
The operation may fail if any of the objects to be created or modified does not conform to the underlying schema of the storage system or the schema enforced by the implementation.
- Parameters:
deltas
- Collection of object deltas to executeoptions
- options influencing processing of the deltas- Throws:
ObjectAlreadyExistsException
- object with specified identifiers already exists, cannot addObjectNotFoundException
- object required to complete the operation was not found (e.g. appropriate connector or resource definition)SchemaException
- error dealing with resource schema, e.g. created object does not conform to schemaExpressionEvaluationException
- evaluation of expression associated with the object has failedCommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.PolicyViolationException
- Policy violation was detected during processing of the objectSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)IllegalArgumentException
- wrong OID format, etc.SystemException
- unknown error from underlying layers or other unexpected state
-
executeChanges
void executeChanges(Collection<ObjectDelta<? extends ObjectType>> deltas) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
Execute the provided object deltas.
The operation executes the provided object deltas. All deltas must relate to analogous objects (e.g. user and linked accounts). The implementation may throw an error if the objects are not analogous. The implementation also implicitly links the objects (mark them to be analogous) if such a link is part of the data model. E.g. the implementation links all accounts to the user if they are passed in a single delta collection. This is especially useful if the account deltas are ADD deltas without OID and therefore cannot be linked explicitly.
There must be no more than one delta for each object. The order of execution is not defined and the implementation is free to determine the correct or most suitable ordering.
The OID provided in ADD deltas may be empty. In that case the OID will be assigned by the implementation and the OIDs will be set in the deltas after the operation is completed.
Execution of ADD deltas should fail if such object already exists (if object with the provided OID already exists). Execution of MODIFY and DELETE deltas should fail if such objects do not exist.
The operation may fail if provided OIDs are in an unusable format for the storage. Generating own OIDs and providing them to this method is not recommended for normal operation.
There are no explicit atomicity guarantees for the operations. Some of the operations may pass, some may fail or even fail partially. The consistency of the data and state are not based on operation atomicity but rather a data model that can "repair" inconsistencies.
The operation may fail if any of the objects to be created or modified does not conform to the underlying schema of the storage system or the schema enforced by the implementation.
- Parameters:
deltas
- Collection of object deltas to execute- Throws:
ObjectAlreadyExistsException
- object with specified identifiers already exists, cannot addObjectNotFoundException
- object required to complete the operation was not found (e.g. appropriate connector or resource definition)SchemaException
- error dealing with resource schema, e.g. created object does not conform to schemaExpressionEvaluationException
- evaluation of expression associated with the object has failedCommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.PolicyViolationException
- Policy violation was detected during processing of the objectSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)IllegalArgumentException
- wrong OID format, etc.SystemException
- unknown error from underlying layers or other unexpected state
-
executeChanges
void executeChanges(ObjectDelta<? extends ObjectType>... deltas) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
Execute the provided object deltas.
The operation executes the provided object deltas. All deltas must relate to analogous objects (e.g. user and linked accounts). The implementation may throw an error if the objects are not analogous. The implementation also implicitly links the objects (mark them to be analogous) if such a link is part of the data model. E.g. the implementation links all accounts to the user if they are passed in a single delta collection. This is especially useful if the account deltas are ADD deltas without OID and therefore cannot be linked explicitly.
There must be no more than one delta for each object. The order of execution is not defined and the implementation is free to determine the correct or most suitable ordering.
The OID provided in ADD deltas may be empty. In that case the OID will be assigned by the implementation and the OIDs will be set in the deltas after the operation is completed.
Execution of ADD deltas should fail if such object already exists (if object with the provided OID already exists). Execution of MODIFY and DELETE deltas should fail if such objects do not exist.
The operation may fail if provided OIDs are in an unusable format for the storage. Generating own OIDs and providing them to this method is not recommended for normal operation.
There are no explicit atomicity guarantees for the operations. Some of the operations may pass, some may fail or even fail partially. The consistency of the data and state are not based on operation atomicity but rather a data model that can "repair" inconsistencies.
The operation may fail if any of the objects to be created or modified does not conform to the underlying schema of the storage system or the schema enforced by the implementation.
- Parameters:
deltas
- Collection of object deltas to execute- Throws:
ObjectAlreadyExistsException
- object with specified identifiers already exists, cannot addObjectNotFoundException
- object required to complete the operation was not found (e.g. appropriate connector or resource definition)SchemaException
- error dealing with resource schema, e.g. created object does not conform to schemaExpressionEvaluationException
- evaluation of expression associated with the object has failedCommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.PolicyViolationException
- Policy violation was detected during processing of the objectSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)IllegalArgumentException
- wrong OID format, etc.SystemException
- unknown error from underlying layers or other unexpected state
-
addObject
<T extends ObjectType> String addObject(PrismObject<T> newObject, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
addObject
<T extends ObjectType> String addObject(PrismObject<T> newObject) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
addObject
<T extends ObjectType> String addObject(T newObject, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
addObject
<T extends ObjectType> String addObject(T newObject) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
modifyObject
<T extends ObjectType> void modifyObject(ObjectDelta<T> modifyDelta, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
modifyObject
<T extends ObjectType> void modifyObject(ObjectDelta<T> modifyDelta) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
deleteObject
<T extends ObjectType> void deleteObject(Class<T> type, String oid, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
deleteObject
<T extends ObjectType> void deleteObject(Class<T> type, String oid) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
recompute
<F extends FocusType> void recompute(Class<F> type, String oid) throws SchemaException, PolicyViolationException, ExpressionEvaluationException, ObjectNotFoundException, ObjectAlreadyExistsException, CommunicationException, ConfigurationException, SecurityViolationException
Recomputes focal object with the specified OID. The operation considers all the applicable policies and mapping and tries to re-apply them as necessary.- Parameters:
type
- type (class) of an object to recomputeoid
- OID of the object to recompute- Throws:
SchemaException
PolicyViolationException
ExpressionEvaluationException
ObjectNotFoundException
ObjectAlreadyExistsException
CommunicationException
ConfigurationException
SecurityViolationException
-
searchShadowOwner
<F extends FocusType> PrismObject<F> searchShadowOwner(String accountOid) throws ObjectNotFoundException, SecurityViolationException, SchemaException, ConfigurationException, ExpressionEvaluationException, CommunicationException
-
searchObjects
<T extends ObjectType> List<T> searchObjects(Class<T> type, ObjectQuery query, Collection<SelectorOptions<GetOperationOptions>> options) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
Search for objects.
Searches through all object of a specified type. Returns a list of objects that match search criteria.
Note that this method has a very limited scaling capability as all the results are stored in the memory. DO NOT USE on large datasets. Recommended usage is only when using queries that cannot return large number of results (e.g. queries for unique values) or when combined with paging capability. For other cases use searchObjectsIterative instead.
Returns empty list if object type is correct but there are no objects of that type. Fails if object type is wrong. Should fail if unknown property is specified in the query.
- Parameters:
type
- (class) of an object to searchquery
- search queryoptions
- options influencing the retrieval and processing of the objects- Returns:
- all objects of specified type that match search criteria (subject to paging)
- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
searchObjects
<T extends ObjectType> List<T> searchObjects(Class<T> type, ObjectQuery query) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
Search for objects.
Searches through all object of a specified type. Returns a list of objects that match search criteria.
Note that this method has a very limited scaling capability as all the results are stored in the memory. DO NOT USE on large datasets. Recommended usage is only when using queries that cannot return large number of results (e.g. queries for unique values) or when combined with paging capability. For other cases use searchObjectsIterative instead.
Returns empty list if object type is correct but there are no objects of that type. Fails if object type is wrong. Should fail if unknown property is specified in the query.
- Parameters:
type
- (class) of an object to searchquery
- search query- Returns:
- all objects of specified type that match search criteria (subject to paging)
- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
searchObjectsIterative
<T extends ObjectType> void searchObjectsIterative(Class<T> type, ObjectQuery query, ResultHandler<T> handler, Collection<SelectorOptions<GetOperationOptions>> options) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Search for objects in iterative fashion (using callback).
Searches through all object of a specified type. A handler is invoked for each object found.
The handler is not called at all if object type is correct but there are no objects of that type. Fails if object type is wrong. Should fail if unknown property is specified in the query.
- Parameters:
type
- (class) of an object to searchquery
- search queryhandler
- callback handler that will be called for each found objectoptions
- options influencing the retrieval and processing of the objects- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
searchObjectsIterative
<T extends ObjectType> void searchObjectsIterative(Class<T> type, ObjectQuery query, ResultHandler<T> handler) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Search for objects in iterative fashion (using callback).
Searches through all object of a specified type. A handler is invoked for each object found.
The handler is not called at all if object type is correct but there are no objects of that type. Fails if object type is wrong. Should fail if unknown property is specified in the query.
- Parameters:
type
- (class) of an object to searchquery
- search queryhandler
- callback handler that will be called for each found object- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
searchObjectByName
<T extends ObjectType> T searchObjectByName(Class<T> type, String name) throws SecurityViolationException, ObjectNotFoundException, CommunicationException, ConfigurationException, SchemaException, ExpressionEvaluationException
Search for objects by name.
Searches through all object of a specified type for an object with specified name. Returns that object if it is found, return null otherwise. The method fails if more than one object is found therefore it cannot be reliably used on types with non-unique names (such as Shadows).
- Parameters:
type
- (class) of an object to searchname
- Name of the object to look for- Returns:
- an object of specified type with a matching name or null
- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
searchObjectByName
<T extends ObjectType> T searchObjectByName(Class<T> type, PolyString name) throws SecurityViolationException, ObjectNotFoundException, CommunicationException, ConfigurationException, SchemaException, ExpressionEvaluationException
Search for objects by name.
Searches through all object of a specified type for an object with specified name. Returns that object if it is found, return null otherwise. The method fails if more than one object is found therefore it cannot be reliably used on types with non-unique names (such as Shadows).
- Parameters:
type
- (class) of an object to searchname
- Name of the object to look for- Returns:
- an object of specified type with a matching name or null
- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
searchObjectByName
<T extends ObjectType> T searchObjectByName(Class<T> type, PolyStringType name) throws SecurityViolationException, ObjectNotFoundException, CommunicationException, ConfigurationException, SchemaException, ExpressionEvaluationException
Search for objects by name.
Searches through all object of a specified type for an object with specified name. Returns that object if it is found, return null otherwise. The method fails if more than one object is found therefore it cannot be reliably used on types with non-unique names (such as Shadows).
- Parameters:
type
- (class) of an object to searchname
- Name of the object to look for- Returns:
- an object of specified type with a matching name or null
- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
countObjects
<T extends ObjectType> int countObjects(Class<T> type, ObjectQuery query, Collection<SelectorOptions<GetOperationOptions>> options) throws SchemaException, ObjectNotFoundException, SecurityViolationException, ConfigurationException, CommunicationException, ExpressionEvaluationException
Count objects.
Searches through all object of a specified type and returns a count of such objects. This method is usually much more efficient than equivalent search method. It is used mostly for presentation purposes, e.g. displaying correct number of pages in the GUI listings.
- Parameters:
type
- (class) of an object to searchquery
- search queryoptions
- options influencing the retrieval and processing of the objects- Returns:
- number of objects of specified type that match search criteria (subject to paging)
- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
countObjects
<T extends ObjectType> int countObjects(Class<T> type, ObjectQuery query) throws SchemaException, ObjectNotFoundException, SecurityViolationException, ConfigurationException, CommunicationException, ExpressionEvaluationException
Count objects.
Searches through all object of a specified type and returns a count of such objects. This method is usually much more efficient than equivalent search method. It is used mostly for presentation purposes, e.g. displaying correct number of pages in the GUI listings.
- Parameters:
type
- (class) of an object to searchquery
- search query- Returns:
- number of objects of specified type that match search criteria (subject to paging)
- Throws:
SchemaException
- unknown property used in search queryObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceSecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.IllegalArgumentException
- wrong query formatExpressionEvaluationException
-
testResource
OperationResult testResource(String resourceOid) throws ObjectNotFoundException
Test the resource connection and basic resource connector functionality.
This operation will NOT throw exception in case the resource connection fails. It such case it will indicate the failure in the return message, but the operation itself succeeds. The operations fails only if the provided arguments are wrong, in case of system error, system misconfiguration, etc.
This returns OperationResult instead of taking it as in/out argument. This is different from the other methods. The testResource method is not using OperationResult to track its own execution but rather to track the execution of resource tests (that in fact happen in provisioning).
- Parameters:
resourceOid
- OID of resource to test- Returns:
- results of executed tests
- Throws:
ObjectNotFoundException
- specified object does not existIllegalArgumentException
- wrong OID format
-
getSequenceCounter
long getSequenceCounter(String sequenceOid) throws ObjectNotFoundException, SchemaException
-
getManagersOids
Collection<String> getManagersOids(UserType user) throws SchemaException, ObjectNotFoundException, SecurityViolationException
-
getManagersOidsExceptUser
Collection<String> getManagersOidsExceptUser(UserType user) throws SchemaException, ObjectNotFoundException, SecurityViolationException, ExpressionEvaluationException
-
getManagersOidsExceptUser
Collection<String> getManagersOidsExceptUser(@NotNull @NotNull Collection<ObjectReferenceType> userRefList) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ExpressionEvaluationException, ConfigurationException
-
getManagers
Collection<UserType> getManagers(UserType user) throws SchemaException, ObjectNotFoundException, SecurityViolationException
-
getManagersByOrgType
Collection<UserType> getManagersByOrgType(UserType user, String orgType) throws SchemaException, ObjectNotFoundException, SecurityViolationException
-
getManagers
Collection<UserType> getManagers(UserType user, String orgType, boolean allowSelf) throws SchemaException, ObjectNotFoundException, SecurityViolationException
-
getUserByOid
UserType getUserByOid(String oid) throws ObjectNotFoundException, SchemaException
-
getOrgUnits
Collection<String> getOrgUnits(UserType user)
-
getOrgUnits
Collection<String> getOrgUnits(UserType user, QName relation)
-
getOrgByOid
OrgType getOrgByOid(String oid) throws SchemaException
- Throws:
SchemaException
-
getOrgByName
OrgType getOrgByName(String name) throws SchemaException, SecurityViolationException
-
getParentOrgs
Collection<OrgType> getParentOrgs(ObjectType object, String relation, String orgType) throws SchemaException, SecurityViolationException
Returns parent orgs of the specified object that have a specific relation and orgType.- Parameters:
object
- base objectrelation
- local part of the relation (in the String form)orgType
- orgType to select- Returns:
- parent orgs of the specified object that have a specific relation and orgType
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getParentOrgs
Collection<OrgType> getParentOrgs(ObjectType object, QName relation, String orgType) throws SchemaException, SecurityViolationException
Returns parent orgs of the specified object that have a specific relation and orgType.- Parameters:
object
- base objectrelation
- relation in the QName formorgType
- orgType to select- Returns:
- parent orgs of the specified object that have a specific relation and orgType
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getParentOrgByOrgType
OrgType getParentOrgByOrgType(ObjectType object, String orgType) throws SchemaException, SecurityViolationException
Returns parent org of the specified object that have a specific orgType.- Parameters:
object
- base objectorgType
- orgType to select- Returns:
- parent org of the specified object that have a specific orgType
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getParentOrgByArchetype
OrgType getParentOrgByArchetype(ObjectType object, String archetypeOid) throws SchemaException, SecurityViolationException
Returns parent org of the specified object that have a specific archetype.- Parameters:
object
- base objectarchetypeOid
- archetype OID to select (null means "any archetype")- Returns:
- parent org of the specified object that have a specific archetype
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getParentOrgsByRelation
Collection<OrgType> getParentOrgsByRelation(ObjectType object, QName relation) throws SchemaException, SecurityViolationException
Returns parent orgs of the specified object that have a specific relation.- Parameters:
object
- base objectrelation
- relation in the QName form- Returns:
- parent orgs of the specified object that have a specific relation
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getParentOrgsByRelation
Collection<OrgType> getParentOrgsByRelation(ObjectType object, String relation) throws SchemaException, SecurityViolationException
Returns parent orgs of the specified object that have a specific relation.- Parameters:
object
- base objectrelation
- local part of the relation (in the String form)- Returns:
- parent orgs of the specified object that have a specific relation
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getParentOrgs
Collection<OrgType> getParentOrgs(ObjectType object) throws SchemaException, SecurityViolationException
Returns all parent orgs of the specified object.- Parameters:
object
- base object- Returns:
- all parent orgs
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getManagersOfOrg
Collection<UserType> getManagersOfOrg(String orgOid) throws SchemaException, SecurityViolationException
-
isManagerOf
boolean isManagerOf(UserType user, String orgOid)
Returns true if user is a manager of specified organizational unit.
-
isManager
boolean isManager(UserType user)
Returns true if user is a manager of any organizational unit.
-
isManagerOfOrgType
boolean isManagerOfOrgType(UserType user, String orgType) throws SchemaException
- Throws:
SchemaException
-
getPlaintextUserPassword
String getPlaintextUserPassword(FocusType user) throws EncryptionException
- Throws:
EncryptionException
-
getPlaintext
String getPlaintext(ProtectedStringType user) throws EncryptionException
- Throws:
EncryptionException
-
getPlaintextAccountPassword
String getPlaintextAccountPassword(ShadowType account) throws EncryptionException
- Throws:
EncryptionException
-
getPlaintextAccountPasswordFromDelta
String getPlaintextAccountPasswordFromDelta(ObjectDelta<? extends ShadowType> delta) throws EncryptionException
- Throws:
EncryptionException
-
getPlaintextUserPasswordFromDeltas
String getPlaintextUserPasswordFromDeltas(List<ObjectDelta<? extends FocusType>> deltas) throws EncryptionException
- Throws:
EncryptionException
-
getCurrentTask
com.evolveum.midpoint.task.api.Task getCurrentTask()
-
getCurrentResult
OperationResult getCurrentResult()
-
getCurrentResult
OperationResult getCurrentResult(String operationName)
-
unwrapModelContext
ModelContext unwrapModelContext(LensContextType lensContextType) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
wrapModelContext
LensContextType wrapModelContext(ModelContext<?> lensContext) throws SchemaException
- Throws:
SchemaException
-
hasLinkedAccount
<F extends ObjectType> boolean hasLinkedAccount(String resourceOid)
-
isDirectlyAssigned
boolean isDirectlyAssigned(String targetOid)
-
isDirectlyAssigned
boolean isDirectlyAssigned(ObjectType target)
-
isDirectlyAssigned
<F extends FocusType> boolean isDirectlyAssigned(F focusType, ObjectType target)
-
getLinkedShadow
ShadowType getLinkedShadow(FocusType focus, String resourceOid) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getLinkedShadows
@NotNull @NotNull List<ShadowType> getLinkedShadows(FocusType focus, String resourceOid) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getLinkedShadow
ShadowType getLinkedShadow(FocusType focus, String resourceOid, boolean repositoryObjectOnly) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getLinkedShadows
@NotNull @NotNull List<ShadowType> getLinkedShadows(FocusType focus, String resourceOid, boolean repositoryObjectOnly) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getLinkedShadow
ShadowType getLinkedShadow(FocusType focus, ResourceType resource) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getLinkedShadow
ShadowType getLinkedShadow(FocusType focus, ResourceType resource, boolean repositoryObjectOnly) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getLinkedShadow
ShadowType getLinkedShadow(FocusType focus, String resourceOid, ShadowKindType kind, String intent) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getLinkedShadow
ShadowType getLinkedShadow(FocusType focus, String resourceOid, ShadowKindType kind, String intent, boolean repositoryObjectOnly) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getResourceDelta
ObjectDeltaType getResourceDelta(ModelContext context, String resourceOid) throws SchemaException
Returns aggregated delta that is to be executed on a given resource.- Parameters:
context
- model contextresourceOid
- OID of the resource in question- Throws:
SchemaException
-
getProtector
Protector getProtector()
-
parseXmlToMap
Map<String,String> parseXmlToMap(String xml)
Returns a map from the translated xml attribute - value pairs.- Parameters:
xml
- A string representation of xml formatted data.- Throws:
SystemException
- when an xml stream exception occurs
-
isFullShadow
boolean isFullShadow()
-
isProjectionExists
boolean isProjectionExists()
-
getMembers
List<UserType> getMembers(String orgOid) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ObjectNotFoundException, ExpressionEvaluationException
-
getMembersAsReferences
List<ObjectReferenceType> getMembersAsReferences(String orgOid) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ObjectNotFoundException, ExpressionEvaluationException
-
computeProjectionLifecycle
<F extends FocusType> String computeProjectionLifecycle(F focus, ShadowType shadow, ResourceType resource)
Default function used to compute projection lifecycle. It is provided here so it can be explicitly invoked from a custom expression and then the result can be changed for special cases.
-
getPrincipal
com.evolveum.midpoint.security.api.MidPointPrincipal getPrincipal() throws SecurityViolationException
Returns principal representing the user whose identity is used to execute the expression.- Throws:
SecurityViolationException
-
getPrincipalOid
String getPrincipalOid()
Returns OID of the current principal. After login is complete, the returned OID is the same as getPrincipal().getOid(). However, during login process, this method returns the OID of the user that is being authenticated/logged-in.
-
getChannel
String getChannel()
-
getWorkflowService
CaseService getWorkflowService()
-
getShadowsToActivate
List<ShadowType> getShadowsToActivate(Collection<? extends ModelElementContext> projectionContexts)
Used for account activation notifier to collect all shadows which are going to be activated.
-
createWorkItemCompletionLink
@Nullable @Nullable String createWorkItemCompletionLink(@NotNull @NotNull WorkItemId workItemId)
Returns a link where given work item can be completed.- Returns:
- null if such a link cannot be created
-
resolveEntitlement
ShadowType resolveEntitlement(ShadowAssociationType shadowAssociationType)
-
collectExtensions
ExtensionType collectExtensions(AssignmentPathType path, int startAt) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
submitTaskFromTemplate
TaskType submitTaskFromTemplate(String templateTaskOid, List<Item<?,?>> extensionItems) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
submitTaskFromTemplate
TaskType submitTaskFromTemplate(String templateTaskOid, Map<QName,Object> extensionValues) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
executeChangesAsynchronously
TaskType executeChangesAsynchronously(Collection<ObjectDelta<?>> deltas, ModelExecuteOptions options, String templateTaskOid) throws SecurityViolationException, ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
executeChangesAsynchronously
TaskType executeChangesAsynchronously(Collection<ObjectDelta<?>> deltas, ModelExecuteOptions options, String templateTaskOid, com.evolveum.midpoint.task.api.Task opTask, OperationResult result) throws SecurityViolationException, ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
translate
String translate(LocalizableMessage message)
-
translate
String translate(LocalizableMessageType message)
-
countAccounts
<T> Integer countAccounts(String resourceOid, QName attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
countAccounts
<T> Integer countAccounts(ResourceType resourceType, QName attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
countAccounts
<T> Integer countAccounts(ResourceType resourceType, String attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
isUniquePropertyValue
<T> boolean isUniquePropertyValue(ObjectType objectType, String propertyPathString, T propertyValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
getObjectsInConflictOnPropertyValue
<O extends ObjectType,T> List<O> getObjectsInConflictOnPropertyValue(O objectType, String propertyPathString, T propertyValue, boolean getAllConflicting) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
isUniqueAccountValue
<T> boolean isUniqueAccountValue(ResourceType resourceType, ShadowType shadowType, String attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
getModelContext
<F extends ObjectType> ModelContext<F> getModelContext()
-
getFocusContext
<F extends ObjectType> ModelElementContext<F> getFocusContext()
-
getProjectionContext
ModelProjectionContext getProjectionContext()
-
getMapping
<V extends PrismValue,D extends ItemDefinition<?>> Mapping<V,D> getMapping()
-
executeAdHocProvisioningScript
Object executeAdHocProvisioningScript(ResourceType resource, String language, String code) throws SchemaException, ObjectNotFoundException, ExpressionEvaluationException, CommunicationException, ConfigurationException, SecurityViolationException, ObjectAlreadyExistsException
-
executeAdHocProvisioningScript
Object executeAdHocProvisioningScript(String resourceOid, String language, String code) throws SchemaException, ObjectNotFoundException, ExpressionEvaluationException, CommunicationException, ConfigurationException, SecurityViolationException, ObjectAlreadyExistsException
-
isEvaluateNew
Boolean isEvaluateNew()
Returns indication whether a script code is evaluating a new value. If this method returns true value then the script code is evaluating "new" value. That means a value that is going to be set to target, e.g. value from "add" or "replace" parts of the delta. If this method returns false value then the script code is evaluating "old" value. That means a value that is used for the purposes of removing values from target, e.g. value from "delete" part of the delta or values from an existing object. If this method returns null then the old/new status cannot be determined or this method is invoked in a situation when such a distinction is not applicable.
-
collectAssignedFocusMappingsResults
@NotNull @NotNull Collection<PrismValue> collectAssignedFocusMappingsResults(@NotNull @NotNull ItemPath path) throws SchemaException
Returns all non-negative values from all focus mappings (targeted to given path) from all non-negative evaluated assignments. Highly experimental. Use at your own risk.- Throws:
SchemaException
-
getFocusesByCorrelationRule
<F extends FocusType> List<F> getFocusesByCorrelationRule(Class<F> type, String resourceOid, ShadowKindType kind, String intent, ShadowType shadow)
To be used e.g. in synchronization sorter expressions.
-
previewChanges
<F extends ObjectType> ModelContext<F> previewChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options) throws CommunicationException, ObjectNotFoundException, ObjectAlreadyExistsException, ConfigurationException, SchemaException, SecurityViolationException, PolicyViolationException, ExpressionEvaluationException
-
getPrismContext
PrismContext getPrismContext()
-
getRelationRegistry
RelationRegistry getRelationRegistry()
-
applyDefinition
<T extends ObjectType> void applyDefinition(T object) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
deltaFor
<C extends Containerable> S_ItemEntry deltaFor(Class<C> objectClass) throws SchemaException
- Throws:
SchemaException
-
hasArchetype
default <O extends ObjectType> boolean hasArchetype(O object, String archetypeOid)
-
getArchetype
@Deprecated <O extends ObjectType> ArchetypeType getArchetype(O object) throws SchemaException, ConfigurationException
Deprecated.Assumes single archetype. May throw error if used on object that has more than one archetype.
-
getArchetypes
@NotNull <O extends ObjectType> @NotNull List<ArchetypeType> getArchetypes(O object) throws SchemaException, ConfigurationException
-
getArchetypeOid
@Deprecated <O extends ObjectType> String getArchetypeOid(O object) throws SchemaException, ConfigurationException
Deprecated.Assumes single archetype. May throw error if used on object that has more than one archetype.
-
getArchetypeOids
@NotNull <O extends ObjectType> @NotNull List<String> getArchetypeOids(O object)
-
addRecomputeTrigger
default <O extends ObjectType> void addRecomputeTrigger(O object, Long timestamp) throws ObjectAlreadyExistsException, SchemaException, ObjectNotFoundException
-
addRecomputeTrigger
default <O extends ObjectType> void addRecomputeTrigger(O object, Long timestamp, MidpointFunctions.TriggerCustomizer triggerCustomizer) throws ObjectAlreadyExistsException, SchemaException, ObjectNotFoundException
-
addRecomputeTrigger
default <O extends ObjectType> void addRecomputeTrigger(PrismObject<O> object, Long timestamp) throws ObjectAlreadyExistsException, SchemaException, ObjectNotFoundException
-
addRecomputeTrigger
<O extends ObjectType> void addRecomputeTrigger(PrismObject<O> object, Long timestamp, MidpointFunctions.TriggerCustomizer triggerCustomizer) throws ObjectAlreadyExistsException, SchemaException, ObjectNotFoundException
-
getRepositoryService
com.evolveum.midpoint.repo.api.RepositoryService getRepositoryService()
-
getOptimizingTriggerCreator
@NotNull @NotNull OptimizingTriggerCreator getOptimizingTriggerCreator(long fireAfter, long safetyMargin)
-
getAttributeDefinition
@NotNull <T> @NotNull ResourceAttributeDefinition<T> getAttributeDefinition(PrismObject<ResourceType> resource, QName objectClassName, QName attributeName) throws SchemaException
- Throws:
SchemaException
-
getAttributeDefinition
@NotNull <T> @NotNull ResourceAttributeDefinition<T> getAttributeDefinition(PrismObject<ResourceType> resource, String objectClassName, String attributeName) throws SchemaException
- Throws:
SchemaException
-
createRecomputeTrigger
@Experimental void createRecomputeTrigger(Class<? extends ObjectType> type, String oid) throws SchemaException, ObjectAlreadyExistsException, ObjectNotFoundException
Goes directly to repository service.
-
getCorrelationCaseForShadow
@Experimental @Nullable @Nullable CaseType getCorrelationCaseForShadow(@Nullable @Nullable ShadowType shadow) throws SchemaException
Returns a correlation case for given shadow. (Need not be full.)- Throws:
SchemaException
-
describeResourceObjectSet
String describeResourceObjectSet(ResourceObjectSetType set) throws SchemaException, ExpressionEvaluationException, CommunicationException, SecurityViolationException, ConfigurationException, ObjectNotFoundException
-
-