Class MidpointFunctionsImpl
- java.lang.Object
-
- com.evolveum.midpoint.model.impl.expr.MidpointFunctionsImpl
-
- All Implemented Interfaces:
MidpointFunctions
@Component public class MidpointFunctionsImpl extends Object implements MidpointFunctions
- Author:
- semancik
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.evolveum.midpoint.model.api.expr.MidpointFunctions
MidpointFunctions.TriggerCustomizer
-
-
Constructor Summary
Constructors Constructor Description MidpointFunctionsImpl()
-
Method Summary
All Methods Instance Methods Concrete 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)
<O extends ObjectType>
voidaddRecomputeTrigger(PrismObject<O> object, Long timestamp, MidpointFunctions.TriggerCustomizer triggerCustomizer)
<O extends ObjectType>
voidapplyDefinition(O 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)
A variant ofMidpointFunctions.countAccounts(String, QName, Object)
.<T> Integer
countAccounts(ResourceType resourceType, QName attributeName, T attributeValue)
A variant ofMidpointFunctions.countAccounts(String, QName, Object)
.<T> Integer
countAccounts(String resourceOid, QName attributeName, T attributeValue)
Counts accounts having `attributeValue` of `attributeName`.<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
createInvitationLink(UserType user)
<T extends AssignmentHolderType>
TcreateLinkedSource(String linkType)
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
describeResourceObjectSetLong(ResourceObjectSetType set)
Returns longer version of human-readable description of the resource object set: .String
describeResourceObjectSetShort(ResourceObjectSetType set)
Short version ofMidpointFunctions.describeResourceObjectSetLong(ResourceObjectSetType)
: .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, Task opTask, OperationResult result)
boolean
extensionOptionIsNotFalse(String localName)
boolean
extensionOptionIsTrue(String localName)
<F extends FocusType>
@NotNull List<F>findCandidateOwners(@NotNull Class<F> focusType, @NotNull ShadowType shadow, @NotNull String resourceOid, @NotNull ShadowKindType kind, @NotNull String intent)
Finds candidate owners using defined correlation rules.<T extends AssignmentHolderType>
TfindLinkedSource(Class<T> type)
<T extends AssignmentHolderType>
TfindLinkedSource(String linkType)
<T extends AssignmentHolderType>
List<T>findLinkedSources(Class<T> type)
<T extends AssignmentHolderType>
List<T>findLinkedSources(String linkTypeName)
<T extends AssignmentHolderType>
TfindLinkedTarget(Class<T> type, String archetypeOid)
<T extends AssignmentHolderType>
TfindLinkedTarget(String linkTypeName)
<T extends AssignmentHolderType>
@NotNull List<T>findLinkedTargets(Class<T> type, String archetypeOid)
<T extends AssignmentHolderType>
@NotNull List<T>findLinkedTargets(String linkTypeName)
<O extends ObjectType>
ArchetypeTypegetArchetype(O object)
Deprecated.<O extends ObjectType>
StringgetArchetypeOid(O object)
Deprecated.@NotNull List<String>
getArchetypeOids(ObjectType object)
Returns a list of archetype OIDs for given 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)
Boolean
getBooleanExtensionOption(String localName)
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)
Task
getCurrentTask()
@NotNull Task
getCurrentTaskRequired()
Object
getExtensionOptionRealValue(String localName)
<T> T
getExtensionOptionRealValue(String localName, Class<T> type)
<F extends ObjectType>
ModelElementContext<F>getFocusContext()
@Nullable ObjectReferenceType
getFocusObjectReference()
ShadowType
getLinkedShadow(FocusType focus, String resourceOid, ShadowKindType kind, String intent, boolean repositoryObjectOnly)
Null values of resource oid, kind, and intent mean "any".@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)
Map<String,Object>
getMessageBodyAsMap(AsyncUpdateMessageType message)
Item<?,?>
getMessageBodyAsPrismItem(AsyncUpdateMessageType message)
<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)
<O extends ObjectType,T>
List<O>getObjectsInConflictOnPropertyValue(O objectType, String propertyPathString, T propertyValue, String matchingRuleName, 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 protectedStringType)
String
getPlaintextAccountPassword(ShadowType account)
String
getPlaintextAccountPasswordFromDelta(ObjectDelta<? extends ShadowType> delta)
String
getPlaintextUserPassword(FocusType user)
String
getPlaintextUserPasswordFromDeltas(List<ObjectDelta<? extends FocusType>> objectDeltas)
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()
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 ModelProjectionContext> projectionContexts)
Used for account activation notifier to collect all shadows which are going to be activated.<O extends AssignmentHolderType>
@Nullable ArchetypeTypegetStructuralArchetype(O object)
Returns the structural archetype for the object, possibly `null`.UserType
getUserByOid(String oid)
CaseService
getWorkflowService()
boolean
hasActiveAssignmentTargetSubtype(String roleSubtype)
<F extends ObjectType>
booleanhasLinkedAccount(String resourceOid)
String
hello(String name)
boolean
isCurrentProjectionActivated()
Returns `true` if the current clockwork operation brings the projection into existence and being effectively enabled, i.e.boolean
isCurrentProjectionBeingDisabled()
Returns `true` if the current clockwork operation causes the current projection to have `administrativeState` switched to a disabled value (e.g.boolean
isCurrentProjectionBeingEnabled()
Returns `true` if the current clockwork operation causes the current projection to have `administrativeState` switched toActivationStatusType.ENABLED
.boolean
isCurrentProjectionDeactivated()
Returns `true` if the current clockwork operation deletes the projection or effectively disables it, i.e.boolean
isDirectlyAssigned(ObjectType target)
<F extends FocusType>
booleanisDirectlyAssigned(F focusType, ObjectType target)
<F extends FocusType>
booleanisDirectlyAssigned(F focus, String targetOid)
Returns `true` if `focus` has a `assignment` with `targetRef.OID` being equal to `targetOid`.boolean
isDirectlyAssigned(String targetOid)
Boolean
isEvaluateNew()
Returns indication whether a script code is evaluating a new value.boolean
isFocusActivated()
Does the current clockwork operation bring the focus into existence and being effectively enabled? (So, previously it was either non-existent or effectively disabled.)boolean
isFocusDeactivated()
Does the current clockwork operation delete or effectively disable the focus? (So, previously it existed and was effectively enabled.)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)
Checks if the value `attributeValue` of `attributeName` in given shadow is unique on given resource.<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 ObjectType>
ModelContext<F>previewChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options, OperationResult result)
<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)
Collection<PrismValue>
selectIdentityItemValues(@Nullable Collection<FocusIdentityType> identities, @Nullable FocusIdentitySourceType source, @NotNull ItemPath itemPath)
Selects specified values from all relevant identity data.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(LocalizableMessage message, boolean useDefaultLocale)
Translates message parameter.String
translate(LocalizableMessageType message)
String
translate(LocalizableMessageType message, boolean useDefaultLocale)
Translates message parameter.String
translate(String key, Objects... args)
ModelContext<?>
unwrapModelContext(LensContextType lensContextType)
MessageWrapper
wrap(AsyncUpdateMessageType message)
LensContextType
wrapModelContext(ModelContext<?> lensContext)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.evolveum.midpoint.model.api.expr.MidpointFunctions
addRecomputeTrigger, addRecomputeTrigger, addRecomputeTrigger, describeResourceObjectSet, getFocusesByCorrelationRule, getLinkedShadow, getLinkedShadow, getLinkedShadow, getLinkedShadow, getLinkedShadow, getLinkedShadows, hasArchetype, isEffectivelyEnabled
-
-
-
-
Field Detail
-
CLASS_DOT
public static final String CLASS_DOT
-
-
Method Detail
-
getPrismContext
public PrismContext getPrismContext()
- Specified by:
getPrismContext
in interfaceMidpointFunctions
-
getRelationRegistry
public RelationRegistry getRelationRegistry()
- Specified by:
getRelationRegistry
in interfaceMidpointFunctions
-
toList
public List<String> toList(String... s)
- Specified by:
toList
in interfaceMidpointFunctions
-
getUserByOid
public UserType getUserByOid(String oid) throws ObjectNotFoundException, SchemaException
- Specified by:
getUserByOid
in interfaceMidpointFunctions
- Throws:
ObjectNotFoundException
SchemaException
-
isMemberOf
public boolean isMemberOf(UserType user, String orgOid)
- Specified by:
isMemberOf
in interfaceMidpointFunctions
-
getPlaintextUserPassword
public String getPlaintextUserPassword(FocusType user) throws EncryptionException
- Specified by:
getPlaintextUserPassword
in interfaceMidpointFunctions
- Throws:
EncryptionException
-
getPlaintextAccountPassword
public String getPlaintextAccountPassword(ShadowType account) throws EncryptionException
- Specified by:
getPlaintextAccountPassword
in interfaceMidpointFunctions
- Throws:
EncryptionException
-
getPlaintextAccountPasswordFromDelta
public String getPlaintextAccountPasswordFromDelta(ObjectDelta<? extends ShadowType> delta) throws EncryptionException
- Specified by:
getPlaintextAccountPasswordFromDelta
in interfaceMidpointFunctions
- Throws:
EncryptionException
-
getPlaintextUserPasswordFromDeltas
public String getPlaintextUserPasswordFromDeltas(List<ObjectDelta<? extends FocusType>> objectDeltas) throws EncryptionException
- Specified by:
getPlaintextUserPasswordFromDeltas
in interfaceMidpointFunctions
- Throws:
EncryptionException
-
hasLinkedAccount
public <F extends ObjectType> boolean hasLinkedAccount(String resourceOid)
- Specified by:
hasLinkedAccount
in interfaceMidpointFunctions
-
isCurrentProjectionBeingEnabled
public boolean isCurrentProjectionBeingEnabled()
Description copied from interface:MidpointFunctions
Returns `true` if the current clockwork operation causes the current projection to have `administrativeState` switched toActivationStatusType.ENABLED
. Not always precise - the original value may not be known.- Specified by:
isCurrentProjectionBeingEnabled
in interfaceMidpointFunctions
-
isCurrentProjectionBeingDisabled
public boolean isCurrentProjectionBeingDisabled()
Description copied from interface:MidpointFunctions
Returns `true` if the current clockwork operation causes the current projection to have `administrativeState` switched to a disabled value (e.g.ActivationStatusType.DISABLED
orActivationStatusType.ARCHIVED
. Not always precise - the original value may not be known. TODO what about deleting projections?- Specified by:
isCurrentProjectionBeingDisabled
in interfaceMidpointFunctions
-
isCurrentProjectionActivated
public boolean isCurrentProjectionActivated() throws SchemaException, ExpressionEvaluationException, CommunicationException, SecurityViolationException, ConfigurationException, ObjectNotFoundException
Description copied from interface:MidpointFunctions
Returns `true` if the current clockwork operation brings the projection into existence and being effectively enabled, i.e. with `administrativeState` set to `null` orActivationStatusType.ENABLED
. (So, previously the projection was either non-existent or effectively disabled.) Loads the full shadow if necessary.
-
isCurrentProjectionDeactivated
public boolean isCurrentProjectionDeactivated() throws SchemaException, ExpressionEvaluationException, CommunicationException, SecurityViolationException, ConfigurationException, ObjectNotFoundException
Description copied from interface:MidpointFunctions
Returns `true` if the current clockwork operation deletes the projection or effectively disables it, i.e. sets `administrativeState`ActivationStatusType.DISABLED
orActivationStatusType.ARCHIVED
. (So, previously the projection existed and was effectively enabled.) Loads the full shadow if necessary.
-
isFocusActivated
public boolean isFocusActivated()
Description copied from interface:MidpointFunctions
Does the current clockwork operation bring the focus into existence and being effectively enabled? (So, previously it was either non-existent or effectively disabled.)- Specified by:
isFocusActivated
in interfaceMidpointFunctions
-
isFocusDeactivated
public boolean isFocusDeactivated()
Description copied from interface:MidpointFunctions
Does the current clockwork operation delete or effectively disable the focus? (So, previously it existed and was effectively enabled.)- Specified by:
isFocusDeactivated
in interfaceMidpointFunctions
-
isDirectlyAssigned
public <F extends FocusType> boolean isDirectlyAssigned(F focus, String targetOid)
Description copied from interface:MidpointFunctions
Returns `true` if `focus` has a `assignment` with `targetRef.OID` being equal to `targetOid`. No other conditions are checked (e.g. validity, assignment condition, lifecycle states, and so on).- Specified by:
isDirectlyAssigned
in interfaceMidpointFunctions
-
isDirectlyAssigned
public <F extends FocusType> boolean isDirectlyAssigned(F focusType, ObjectType target)
- Specified by:
isDirectlyAssigned
in interfaceMidpointFunctions
-
isDirectlyAssigned
public boolean isDirectlyAssigned(String targetOid)
- Specified by:
isDirectlyAssigned
in interfaceMidpointFunctions
-
isDirectlyAssigned
public boolean isDirectlyAssigned(ObjectType target)
- Specified by:
isDirectlyAssigned
in interfaceMidpointFunctions
-
hasActiveAssignmentTargetSubtype
@Experimental public boolean hasActiveAssignmentTargetSubtype(String roleSubtype)
-
getLinkedShadows
@NotNull public @NotNull List<ShadowType> getLinkedShadows(FocusType focus, String resourceOid, boolean repositoryObjectOnly) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
- Specified by:
getLinkedShadows
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
CommunicationException
ConfigurationException
ExpressionEvaluationException
-
getLinkedShadow
public ShadowType getLinkedShadow(FocusType focus, String resourceOid, ShadowKindType kind, String intent, boolean repositoryObjectOnly) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
Null values of resource oid, kind, and intent mean "any".- Specified by:
getLinkedShadow
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
CommunicationException
ConfigurationException
ExpressionEvaluationException
-
isFullShadow
public boolean isFullShadow()
- Specified by:
isFullShadow
in interfaceMidpointFunctions
-
isProjectionExists
public boolean isProjectionExists()
- Specified by:
isProjectionExists
in interfaceMidpointFunctions
-
countAccounts
public <T> Integer countAccounts(String resourceOid, QName attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
Counts accounts having `attributeValue` of `attributeName`. Note that this method uses the default definition ofShadowKindType.ACCOUNT
objects, if present.- Specified by:
countAccounts
in interfaceMidpointFunctions
- Throws:
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
SecurityViolationException
ExpressionEvaluationException
-
countAccounts
public <T> Integer countAccounts(ResourceType resourceType, QName attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
A variant ofMidpointFunctions.countAccounts(String, QName, Object)
.- Specified by:
countAccounts
in interfaceMidpointFunctions
- Throws:
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
SecurityViolationException
ExpressionEvaluationException
-
countAccounts
public <T> Integer countAccounts(ResourceType resourceType, String attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
A variant ofMidpointFunctions.countAccounts(String, QName, Object)
. Attribute name is assumed to be in the `ri:` namespace.- Specified by:
countAccounts
in interfaceMidpointFunctions
- Throws:
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
SecurityViolationException
ExpressionEvaluationException
-
isUniquePropertyValue
public <T> boolean isUniquePropertyValue(ObjectType objectType, String propertyPathString, T propertyValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
getObjectsInConflictOnPropertyValue
public <O extends ObjectType,T> List<O> getObjectsInConflictOnPropertyValue(O objectType, String propertyPathString, T propertyValue, boolean getAllConflicting) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
getObjectsInConflictOnPropertyValue
public <O extends ObjectType,T> List<O> getObjectsInConflictOnPropertyValue(O objectType, String propertyPathString, T propertyValue, String matchingRuleName, boolean getAllConflicting) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
isUniqueAccountValue
public <T> boolean isUniqueAccountValue(ResourceType resourceType, ShadowType shadowType, String attributeName, T attributeValue) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
Checks if the value `attributeValue` of `attributeName` in given shadow is unique on given resource. A search on resource is invoked, and any occurrences (except the one in `shadowType`) are reported as violations. Notes: 1. `shadowType` should have an OID; 2. when constructing the query, the default `account` definition is used to provide attribute definitions.
-
getModelContext
public <F extends ObjectType> ModelContext<F> getModelContext()
- Specified by:
getModelContext
in interfaceMidpointFunctions
-
getFocusContext
public <F extends ObjectType> ModelElementContext<F> getFocusContext()
- Specified by:
getFocusContext
in interfaceMidpointFunctions
-
getProjectionContext
public ModelProjectionContext getProjectionContext()
- Specified by:
getProjectionContext
in interfaceMidpointFunctions
-
getMapping
public <V extends PrismValue,D extends ItemDefinition<?>> Mapping<V,D> getMapping()
- Specified by:
getMapping
in interfaceMidpointFunctions
-
getCurrentTask
public Task getCurrentTask()
- Specified by:
getCurrentTask
in interfaceMidpointFunctions
-
getCurrentTaskRequired
@NotNull public @NotNull Task getCurrentTaskRequired()
-
getCurrentResult
public OperationResult getCurrentResult()
- Specified by:
getCurrentResult
in interfaceMidpointFunctions
-
getCurrentResult
public OperationResult getCurrentResult(String operationName)
- Specified by:
getCurrentResult
in interfaceMidpointFunctions
-
unwrapModelContext
public ModelContext<?> unwrapModelContext(LensContextType lensContextType) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, ExpressionEvaluationException
- Specified by:
unwrapModelContext
in interfaceMidpointFunctions
- Throws:
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
ExpressionEvaluationException
-
wrapModelContext
public LensContextType wrapModelContext(ModelContext<?> lensContext) throws SchemaException
- Specified by:
wrapModelContext
in interfaceMidpointFunctions
- Throws:
SchemaException
-
createEmptyObject
public <T extends ObjectType> T createEmptyObject(Class<T> type) throws SchemaException
Description copied from interface:MidpointFunctions
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.
- Specified by:
createEmptyObject
in interfaceMidpointFunctions
- 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
public <T extends ObjectType> T createEmptyObjectWithName(Class<T> type, String name) throws SchemaException
Description copied from interface:MidpointFunctions
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.
- Specified by:
createEmptyObjectWithName
in interfaceMidpointFunctions
- 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
public <T extends ObjectType> T createEmptyObjectWithName(Class<T> type, PolyString name) throws SchemaException
Description copied from interface:MidpointFunctions
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.
- Specified by:
createEmptyObjectWithName
in interfaceMidpointFunctions
- 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
public <T extends ObjectType> T createEmptyObjectWithName(Class<T> type, PolyStringType name) throws SchemaException
Description copied from interface:MidpointFunctions
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.
- Specified by:
createEmptyObjectWithName
in interfaceMidpointFunctions
- 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
public <T extends ObjectType> T resolveReference(ObjectReferenceType reference) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
-
resolveReferenceIfExists
public <T extends ObjectType> T resolveReferenceIfExists(ObjectReferenceType reference) throws SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
- Specified by:
resolveReferenceIfExists
in interfaceMidpointFunctions
- Throws:
SchemaException
CommunicationException
ConfigurationException
SecurityViolationException
ExpressionEvaluationException
-
getObject
public <T extends ObjectType> T getObject(Class<T> type, String oid, Collection<SelectorOptions<GetOperationOptions>> options) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
getObject
in interfaceMidpointFunctions
- 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 compliantCommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.SecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ExpressionEvaluationException
-
getObject
public <T extends ObjectType> T getObject(Class<T> type, String oid) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
getObject
in interfaceMidpointFunctions
- 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 compliantCommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.SecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ExpressionEvaluationException
-
executeChanges
public void executeChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
executeChanges
in interfaceMidpointFunctions
- 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)
-
executeChanges
public void executeChanges(Collection<ObjectDelta<? extends ObjectType>> deltas) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
executeChanges
in interfaceMidpointFunctions
- 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)
-
executeChanges
@SafeVarargs public final void executeChanges(ObjectDelta<? extends ObjectType>... deltas) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
executeChanges
in interfaceMidpointFunctions
- 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)
-
addObject
public <T extends ObjectType> String addObject(PrismObject<T> newObject, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
addObject
public <T extends ObjectType> String addObject(PrismObject<T> newObject) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
addObject
public <T extends ObjectType> String addObject(T newObject, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
addObject
public <T extends ObjectType> String addObject(T newObject) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
modifyObject
public <T extends ObjectType> void modifyObject(ObjectDelta<T> modifyDelta, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
modifyObject
public <T extends ObjectType> void modifyObject(ObjectDelta<T> modifyDelta) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
deleteObject
public <T extends ObjectType> void deleteObject(Class<T> type, String oid, ModelExecuteOptions options) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
deleteObject
public <T extends ObjectType> void deleteObject(Class<T> type, String oid) throws ObjectAlreadyExistsException, ObjectNotFoundException, SchemaException, ExpressionEvaluationException, CommunicationException, ConfigurationException, PolicyViolationException, SecurityViolationException
-
recompute
public <F extends FocusType> void recompute(Class<F> type, String oid) throws SchemaException, PolicyViolationException, ExpressionEvaluationException, ObjectNotFoundException, ObjectAlreadyExistsException, CommunicationException, ConfigurationException, SecurityViolationException
Description copied from interface:MidpointFunctions
Recomputes focal object with the specified OID. The operation considers all the applicable policies and mapping and tries to re-apply them as necessary.- Specified by:
recompute
in interfaceMidpointFunctions
- 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
public <F extends FocusType> PrismObject<F> searchShadowOwner(String accountOid) throws ObjectNotFoundException, SecurityViolationException, SchemaException, ConfigurationException, ExpressionEvaluationException, CommunicationException
-
searchObjects
public <T extends ObjectType> List<T> searchObjects(Class<T> type, ObjectQuery query, Collection<SelectorOptions<GetOperationOptions>> options) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
searchObjects
in interfaceMidpointFunctions
- 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)SecurityViolationException
- 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.ExpressionEvaluationException
-
searchObjects
public <T extends ObjectType> List<T> searchObjects(Class<T> type, ObjectQuery query) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
searchObjects
in interfaceMidpointFunctions
- 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)SecurityViolationException
- 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.ExpressionEvaluationException
-
searchObjectsIterative
public <T extends ObjectType> void searchObjectsIterative(Class<T> type, ObjectQuery query, ResultHandler<T> handler, Collection<SelectorOptions<GetOperationOptions>> options) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
searchObjectsIterative
in interfaceMidpointFunctions
- 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 resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.SecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ExpressionEvaluationException
-
searchObjectsIterative
public <T extends ObjectType> void searchObjectsIterative(Class<T> type, ObjectQuery query, ResultHandler<T> handler) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
searchObjectsIterative
in interfaceMidpointFunctions
- 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 resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.SecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ExpressionEvaluationException
-
searchObjectByName
public <T extends ObjectType> T searchObjectByName(Class<T> type, String name) throws SecurityViolationException, ObjectNotFoundException, CommunicationException, ConfigurationException, SchemaException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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).
- Specified by:
searchObjectByName
in interfaceMidpointFunctions
- 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:
SecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.SchemaException
- unknown property used in search queryExpressionEvaluationException
-
searchObjectByName
public <T extends ObjectType> T searchObjectByName(Class<T> type, PolyString name) throws SecurityViolationException, ObjectNotFoundException, CommunicationException, ConfigurationException, SchemaException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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).
- Specified by:
searchObjectByName
in interfaceMidpointFunctions
- 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:
SecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.SchemaException
- unknown property used in search queryExpressionEvaluationException
-
searchObjectByName
public <T extends ObjectType> T searchObjectByName(Class<T> type, PolyStringType name) throws SecurityViolationException, ObjectNotFoundException, CommunicationException, ConfigurationException, SchemaException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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).
- Specified by:
searchObjectByName
in interfaceMidpointFunctions
- 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:
SecurityViolationException
- Security violation during operation execution. May be caused either by midPoint internal security mechanism but also by external mechanism (e.g. on the resource)ObjectNotFoundException
- object required for a search was not found (e.g. resource definition)CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceConfigurationException
- Configuration error. E.g. misconfigured resource parameters, invalid policies, etc.SchemaException
- unknown property used in search queryExpressionEvaluationException
-
countObjects
public <T extends ObjectType> int countObjects(Class<T> type, ObjectQuery query, Collection<SelectorOptions<GetOperationOptions>> options) throws SchemaException, ObjectNotFoundException, SecurityViolationException, ConfigurationException, CommunicationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
countObjects
in interfaceMidpointFunctions
- 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)SecurityViolationException
- 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.CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceExpressionEvaluationException
-
countObjects
public <T extends ObjectType> int countObjects(Class<T> type, ObjectQuery query) throws SchemaException, ObjectNotFoundException, SecurityViolationException, ConfigurationException, CommunicationException, ExpressionEvaluationException
Description copied from interface:MidpointFunctions
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.
- Specified by:
countObjects
in interfaceMidpointFunctions
- 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)SecurityViolationException
- 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.CommunicationException
- Communication (network) error during retrieval. E.g. error communicating with the resourceExpressionEvaluationException
-
testResource
public OperationResult testResource(String resourceOid) throws ObjectNotFoundException, SchemaException, ConfigurationException
Description copied from interface:MidpointFunctions
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).
- Specified by:
testResource
in interfaceMidpointFunctions
- Parameters:
resourceOid
- OID of resource to test- Returns:
- results of executed tests
- Throws:
ObjectNotFoundException
- specified object does not existSchemaException
ConfigurationException
-
getResourceDelta
public ObjectDeltaType getResourceDelta(ModelContext<?> context, String resourceOid) throws SchemaException
Description copied from interface:MidpointFunctions
Returns aggregated delta that is to be executed on a given resource.- Specified by:
getResourceDelta
in interfaceMidpointFunctions
- Parameters:
context
- model contextresourceOid
- OID of the resource in question- Throws:
SchemaException
-
getSequenceCounter
public long getSequenceCounter(String sequenceOid) throws ObjectNotFoundException, SchemaException
- Specified by:
getSequenceCounter
in interfaceMidpointFunctions
- Throws:
ObjectNotFoundException
SchemaException
-
getManagersOids
public Collection<String> getManagersOids(UserType user) throws SchemaException, SecurityViolationException
- Specified by:
getManagersOids
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
-
getOrgUnits
public Collection<String> getOrgUnits(UserType user, QName relation)
- Specified by:
getOrgUnits
in interfaceMidpointFunctions
-
getParentOrgByOrgType
public OrgType getParentOrgByOrgType(ObjectType object, String orgType) throws SchemaException, SecurityViolationException
Description copied from interface:MidpointFunctions
Returns parent org of the specified object that have a specific orgType.- Specified by:
getParentOrgByOrgType
in interfaceMidpointFunctions
- 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
public OrgType getParentOrgByArchetype(ObjectType object, String archetypeOid) throws SchemaException, SecurityViolationException
Description copied from interface:MidpointFunctions
Returns parent org of the specified object that have a specific archetype.- Specified by:
getParentOrgByArchetype
in interfaceMidpointFunctions
- 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
-
getOrgByOid
public OrgType getOrgByOid(String oid) throws SchemaException
- Specified by:
getOrgByOid
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getParentOrgs
public Collection<OrgType> getParentOrgs(ObjectType object) throws SchemaException, SecurityViolationException
Description copied from interface:MidpointFunctions
Returns all parent orgs of the specified object.- Specified by:
getParentOrgs
in interfaceMidpointFunctions
- Parameters:
object
- base object- Returns:
- all parent orgs
- Throws:
SchemaException
- Internal schema errorSecurityViolationException
- Security violation
-
getOrgUnits
public Collection<String> getOrgUnits(UserType user)
- Specified by:
getOrgUnits
in interfaceMidpointFunctions
-
getManagersOfOrg
public Collection<UserType> getManagersOfOrg(String orgOid) throws SchemaException, SecurityViolationException
- Specified by:
getManagersOfOrg
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
-
isManagerOfOrgType
public boolean isManagerOfOrgType(UserType user, String orgType) throws SchemaException
- Specified by:
isManagerOfOrgType
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getManagers
public Collection<UserType> getManagers(UserType user) throws SchemaException, SecurityViolationException
- Specified by:
getManagers
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
-
getManagersByOrgType
public Collection<UserType> getManagersByOrgType(UserType user, String orgType) throws SchemaException, SecurityViolationException
- Specified by:
getManagersByOrgType
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
-
isManagerOf
public boolean isManagerOf(UserType user, String orgOid)
Description copied from interface:MidpointFunctions
Returns true if user is a manager of specified organizational unit.- Specified by:
isManagerOf
in interfaceMidpointFunctions
-
getParentOrgsByRelation
public Collection<OrgType> getParentOrgsByRelation(ObjectType object, String relation) throws SchemaException, SecurityViolationException
Description copied from interface:MidpointFunctions
Returns parent orgs of the specified object that have a specific relation.- Specified by:
getParentOrgsByRelation
in interfaceMidpointFunctions
- 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
-
getManagers
public Collection<UserType> getManagers(UserType user, String orgType, boolean allowSelf) throws SchemaException, SecurityViolationException
- Specified by:
getManagers
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
-
getParentOrgs
public Collection<OrgType> getParentOrgs(ObjectType object, String relation, String orgType) throws SchemaException, SecurityViolationException
Description copied from interface:MidpointFunctions
Returns parent orgs of the specified object that have a specific relation and orgType.- Specified by:
getParentOrgs
in interfaceMidpointFunctions
- 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
-
getManagersOidsExceptUser
public Collection<String> getManagersOidsExceptUser(UserType user) throws SchemaException, SecurityViolationException
- Specified by:
getManagersOidsExceptUser
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
-
getManagersOidsExceptUser
public Collection<String> getManagersOidsExceptUser(@NotNull @NotNull Collection<ObjectReferenceType> userRefList) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
-
getOrgByName
public OrgType getOrgByName(String name) throws SchemaException, SecurityViolationException
- Specified by:
getOrgByName
in interfaceMidpointFunctions
- Throws:
SchemaException
SecurityViolationException
-
getParentOrgsByRelation
public Collection<OrgType> getParentOrgsByRelation(ObjectType object, QName relation) throws SchemaException, SecurityViolationException
Description copied from interface:MidpointFunctions
Returns parent orgs of the specified object that have a specific relation.- Specified by:
getParentOrgsByRelation
in interfaceMidpointFunctions
- 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
-
getParentOrgs
public Collection<OrgType> getParentOrgs(ObjectType object, QName relation, String orgType) throws SchemaException, SecurityViolationException
Description copied from interface:MidpointFunctions
Returns parent orgs of the specified object that have a specific relation and orgType.- Specified by:
getParentOrgs
in interfaceMidpointFunctions
- 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
-
isManager
public boolean isManager(UserType user)
Description copied from interface:MidpointFunctions
Returns true if user is a manager of any organizational unit.- Specified by:
isManager
in interfaceMidpointFunctions
-
getProtector
public Protector getProtector()
- Specified by:
getProtector
in interfaceMidpointFunctions
-
getPlaintext
public String getPlaintext(ProtectedStringType protectedStringType) throws EncryptionException
- Specified by:
getPlaintext
in interfaceMidpointFunctions
- Throws:
EncryptionException
-
parseXmlToMap
public Map<String,String> parseXmlToMap(String xml)
Description copied from interface:MidpointFunctions
Returns a map from the translated xml attribute - value pairs.- Specified by:
parseXmlToMap
in interfaceMidpointFunctions
- Parameters:
xml
- A string representation of xml formatted data.
-
getMembersAsReferences
public List<ObjectReferenceType> getMembersAsReferences(String orgOid) throws SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ObjectNotFoundException, ExpressionEvaluationException
-
getMembers
public List<UserType> getMembers(String orgOid) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException
- Specified by:
getMembers
in interfaceMidpointFunctions
- Throws:
SchemaException
ObjectNotFoundException
SecurityViolationException
CommunicationException
ConfigurationException
ExpressionEvaluationException
-
computeProjectionLifecycle
public <F extends FocusType> String computeProjectionLifecycle(F focus, ShadowType shadow, ResourceType resource)
Description copied from interface:MidpointFunctions
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.- Specified by:
computeProjectionLifecycle
in interfaceMidpointFunctions
-
getPrincipal
public MidPointPrincipal getPrincipal() throws SecurityViolationException
Description copied from interface:MidpointFunctions
Returns principal representing the user whose identity is used to execute the expression.- Specified by:
getPrincipal
in interfaceMidpointFunctions
- Throws:
SecurityViolationException
-
getPrincipalOid
public String getPrincipalOid()
Description copied from interface:MidpointFunctions
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.- Specified by:
getPrincipalOid
in interfaceMidpointFunctions
-
getChannel
public String getChannel()
- Specified by:
getChannel
in interfaceMidpointFunctions
-
getWorkflowService
public CaseService getWorkflowService()
- Specified by:
getWorkflowService
in interfaceMidpointFunctions
-
getShadowsToActivate
public List<ShadowType> getShadowsToActivate(Collection<? extends ModelProjectionContext> projectionContexts)
Description copied from interface:MidpointFunctions
Used for account activation notifier to collect all shadows which are going to be activated.- Specified by:
getShadowsToActivate
in interfaceMidpointFunctions
-
createRegistrationConfirmationLink
public String createRegistrationConfirmationLink(UserType userType)
- Specified by:
createRegistrationConfirmationLink
in interfaceMidpointFunctions
-
createInvitationLink
public String createInvitationLink(UserType user)
- Specified by:
createInvitationLink
in interfaceMidpointFunctions
-
createPasswordResetLink
public String createPasswordResetLink(UserType userType)
- Specified by:
createPasswordResetLink
in interfaceMidpointFunctions
-
createWorkItemCompletionLink
@Nullable public @Nullable String createWorkItemCompletionLink(@NotNull @NotNull WorkItemId workItemId)
Description copied from interface:MidpointFunctions
Returns a link where given work item can be completed.- Specified by:
createWorkItemCompletionLink
in interfaceMidpointFunctions
- Returns:
- null if such a link cannot be created
-
createAccountActivationLink
public String createAccountActivationLink(UserType userType)
- Specified by:
createAccountActivationLink
in interfaceMidpointFunctions
-
getConst
public String getConst(String name)
- Specified by:
getConst
in interfaceMidpointFunctions
-
resolveEntitlement
public ShadowType resolveEntitlement(ShadowAssociationType shadowAssociationType)
- Specified by:
resolveEntitlement
in interfaceMidpointFunctions
-
collectExtensions
public ExtensionType collectExtensions(AssignmentPathType path, int startAt) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
executeChangesAsynchronously
public TaskType executeChangesAsynchronously(Collection<ObjectDelta<?>> deltas, ModelExecuteOptions options, String templateTaskOid) throws SecurityViolationException, ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
executeChangesAsynchronously
public TaskType executeChangesAsynchronously(Collection<ObjectDelta<?>> deltas, ModelExecuteOptions options, String templateTaskOid, Task opTask, OperationResult result) throws SecurityViolationException, ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
submitTaskFromTemplate
public TaskType submitTaskFromTemplate(String templateTaskOid, List<Item<?,?>> extensionItems) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
submitTaskFromTemplate
public TaskType submitTaskFromTemplate(String templateTaskOid, Map<QName,Object> extensionValues) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException, ObjectAlreadyExistsException, PolicyViolationException
-
translate
public String translate(String key, Objects... args)
- Specified by:
translate
in interfaceMidpointFunctions
-
translate
public String translate(LocalizableMessage message)
- Specified by:
translate
in interfaceMidpointFunctions
-
translate
public String translate(LocalizableMessage message, boolean useDefaultLocale)
Description copied from interface:MidpointFunctions
Translates message parameter.- Specified by:
translate
in interfaceMidpointFunctions
useDefaultLocale
- If true, default JVM locale will be used for translation -Locale.getDefault()
. If false, Midpoint will check principal object for more appropriate login -MidPointPrincipal.getLocale()
, if no locale availableLocale.getDefault()
will be used.- Returns:
- translated string
-
translate
public String translate(LocalizableMessageType message)
- Specified by:
translate
in interfaceMidpointFunctions
-
translate
public String translate(LocalizableMessageType message, boolean useDefaultLocale)
Description copied from interface:MidpointFunctions
Translates message parameter.- Specified by:
translate
in interfaceMidpointFunctions
useDefaultLocale
- If true, default JVM locale will be used for translation -Locale.getDefault()
. If false, Midpoint will check principal object for more appropriate login -MidPointPrincipal.getLocale()
, if no locale availableLocale.getDefault()
will be used.- Returns:
- translated string
-
executeAdHocProvisioningScript
public Object executeAdHocProvisioningScript(ResourceType resource, String language, String code) throws SchemaException, ObjectNotFoundException, ExpressionEvaluationException, CommunicationException, ConfigurationException, SecurityViolationException, ObjectAlreadyExistsException
-
executeAdHocProvisioningScript
public Object executeAdHocProvisioningScript(String resourceOid, String language, String code) throws SchemaException, ObjectNotFoundException, ExpressionEvaluationException, CommunicationException, ConfigurationException, SecurityViolationException, ObjectAlreadyExistsException
-
isEvaluateNew
public Boolean isEvaluateNew()
Description copied from interface:MidpointFunctions
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.- Specified by:
isEvaluateNew
in interfaceMidpointFunctions
-
collectAssignedFocusMappingsResults
@NotNull public @NotNull Collection<PrismValue> collectAssignedFocusMappingsResults(@NotNull @NotNull ItemPath path) throws SchemaException
Description copied from interface:MidpointFunctions
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.- Specified by:
collectAssignedFocusMappingsResults
in interfaceMidpointFunctions
- Throws:
SchemaException
-
findCandidateOwners
@NotNull public <F extends FocusType> @NotNull List<F> findCandidateOwners(@NotNull @NotNull Class<F> focusType, @NotNull @NotNull ShadowType shadow, @NotNull @NotNull String resourceOid, @NotNull @NotNull ShadowKindType kind, @NotNull @NotNull String intent) throws SchemaException, ExpressionEvaluationException, CommunicationException, SecurityViolationException, ConfigurationException, ObjectNotFoundException
Description copied from interface:MidpointFunctions
Finds candidate owners using defined correlation rules. (To be used e.g. in synchronization sorter expressions.) Limitations/notes: 1. Fully supported only for simple correlators: query, expression, and item. Other correlators may or may not work here. 2. The method call encompasses execution of "before correlation" mappings.- Specified by:
findCandidateOwners
in interfaceMidpointFunctions
- Parameters:
focusType
- Type of the owner looked for. It is merged with the type defined for given kind/intent; the more specific of the two is used.shadow
- Resource object we want to correlateresourceOid
- OID of the resource we want to do the correlation forkind
- Pre-determined (or assumed) kind of the resource objectintent
- Pre-determined (or assumed) intent of the resource object- Throws:
SchemaException
ExpressionEvaluationException
CommunicationException
SecurityViolationException
ConfigurationException
ObjectNotFoundException
-
previewChanges
public <F extends ObjectType> ModelContext<F> previewChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options) throws CommunicationException, ObjectNotFoundException, ObjectAlreadyExistsException, ConfigurationException, SchemaException, SecurityViolationException, PolicyViolationException, ExpressionEvaluationException
-
previewChanges
public <F extends ObjectType> ModelContext<F> previewChanges(Collection<ObjectDelta<? extends ObjectType>> deltas, ModelExecuteOptions options, OperationResult result) throws CommunicationException, ObjectNotFoundException, ObjectAlreadyExistsException, ConfigurationException, SchemaException, SecurityViolationException, PolicyViolationException, ExpressionEvaluationException
-
applyDefinition
public <O extends ObjectType> void applyDefinition(O object) throws SchemaException, ObjectNotFoundException, CommunicationException, ConfigurationException, ExpressionEvaluationException
- Specified by:
applyDefinition
in interfaceMidpointFunctions
- Throws:
SchemaException
ObjectNotFoundException
CommunicationException
ConfigurationException
ExpressionEvaluationException
-
deltaFor
public <C extends Containerable> S_ItemEntry deltaFor(Class<C> objectClass) throws SchemaException
- Specified by:
deltaFor
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getArchetype
@Deprecated public <O extends ObjectType> ArchetypeType getArchetype(O object) throws SchemaException
Deprecated.DEPRECATED use getArchetypes(object) or getStructuralArchetype(object)- Specified by:
getArchetype
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getStructuralArchetype
@Nullable public <O extends AssignmentHolderType> @Nullable ArchetypeType getStructuralArchetype(O object) throws SchemaException
Description copied from interface:MidpointFunctions
Returns the structural archetype for the object, possibly `null`.- Specified by:
getStructuralArchetype
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getArchetypes
@NotNull public <O extends ObjectType> @NotNull List<ArchetypeType> getArchetypes(O object) throws SchemaException
- Specified by:
getArchetypes
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getArchetypeOid
@Deprecated public <O extends ObjectType> String getArchetypeOid(O object) throws SchemaException
Deprecated.DEPRECATED use getArchetypeOids(object)- Specified by:
getArchetypeOid
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getArchetypeOids
@NotNull public @NotNull List<String> getArchetypeOids(ObjectType object)
Description copied from interface:MidpointFunctions
Returns a list of archetype OIDs for given object. Currently, those OIDs are taken from archetype assignments. ArchetypeRef values are ignored.- Specified by:
getArchetypeOids
in interfaceMidpointFunctions
-
wrap
public MessageWrapper wrap(AsyncUpdateMessageType message)
-
getMessageBodyAsMap
public Map<String,Object> getMessageBodyAsMap(AsyncUpdateMessageType message) throws IOException
- Throws:
IOException
-
getMessageBodyAsPrismItem
public Item<?,?> getMessageBodyAsPrismItem(AsyncUpdateMessageType message) throws SchemaException
- Throws:
SchemaException
-
addRecomputeTrigger
public <O extends ObjectType> void addRecomputeTrigger(PrismObject<O> object, Long timestamp, MidpointFunctions.TriggerCustomizer triggerCustomizer) throws ObjectAlreadyExistsException, SchemaException, ObjectNotFoundException
- Specified by:
addRecomputeTrigger
in interfaceMidpointFunctions
- Throws:
ObjectAlreadyExistsException
SchemaException
ObjectNotFoundException
-
getRepositoryService
public RepositoryService getRepositoryService()
- Specified by:
getRepositoryService
in interfaceMidpointFunctions
-
getOptimizingTriggerCreator
@NotNull public @NotNull OptimizingTriggerCreator getOptimizingTriggerCreator(long fireAfter, long safetyMargin)
- Specified by:
getOptimizingTriggerCreator
in interfaceMidpointFunctions
-
getAttributeDefinition
@NotNull public <T> @NotNull ResourceAttributeDefinition<T> getAttributeDefinition(PrismObject<ResourceType> resource, QName objectClassName, QName attributeName) throws SchemaException
- Specified by:
getAttributeDefinition
in interfaceMidpointFunctions
- Throws:
SchemaException
-
getAttributeDefinition
@NotNull public <T> @NotNull ResourceAttributeDefinition<T> getAttributeDefinition(PrismObject<ResourceType> resource, String objectClassName, String attributeName) throws SchemaException
- Specified by:
getAttributeDefinition
in interfaceMidpointFunctions
- Throws:
SchemaException
-
findLinkedSource
@Experimental public <T extends AssignmentHolderType> T findLinkedSource(Class<T> type) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
findLinkedSource
@Experimental public <T extends AssignmentHolderType> T findLinkedSource(String linkType) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
findLinkedSources
@Experimental public <T extends AssignmentHolderType> List<T> findLinkedSources(Class<T> type) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
findLinkedSources
@Experimental public <T extends AssignmentHolderType> List<T> findLinkedSources(String linkTypeName) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
findLinkedTarget
@Experimental public <T extends AssignmentHolderType> T findLinkedTarget(Class<T> type, String archetypeOid) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
findLinkedTarget
@Experimental public <T extends AssignmentHolderType> T findLinkedTarget(String linkTypeName) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
findLinkedTargets
@Experimental @NotNull public <T extends AssignmentHolderType> @NotNull List<T> findLinkedTargets(Class<T> type, String archetypeOid) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
findLinkedTargets
@Experimental @NotNull public <T extends AssignmentHolderType> @NotNull List<T> findLinkedTargets(String linkTypeName) throws CommunicationException, ObjectNotFoundException, SchemaException, SecurityViolationException, ConfigurationException, ExpressionEvaluationException
-
createLinkedSource
@Experimental public <T extends AssignmentHolderType> T createLinkedSource(String linkType) throws SchemaException, ConfigurationException
-
getFocusObjectReference
@Experimental @Nullable public @Nullable ObjectReferenceType getFocusObjectReference()
-
createRecomputeTrigger
public void createRecomputeTrigger(Class<? extends ObjectType> type, String oid) throws SchemaException, ObjectAlreadyExistsException, ObjectNotFoundException
Description copied from interface:MidpointFunctions
Goes directly to repository service.- Specified by:
createRecomputeTrigger
in interfaceMidpointFunctions
- Throws:
SchemaException
ObjectAlreadyExistsException
ObjectNotFoundException
-
extensionOptionIsNotFalse
public boolean extensionOptionIsNotFalse(String localName)
-
extensionOptionIsTrue
public boolean extensionOptionIsTrue(String localName)
-
getExtensionOptionRealValue
public <T> T getExtensionOptionRealValue(String localName, Class<T> type)
-
getCorrelationCaseForShadow
@Nullable public @Nullable CaseType getCorrelationCaseForShadow(@Nullable @Nullable ShadowType shadow) throws SchemaException
Description copied from interface:MidpointFunctions
Returns a correlation case for given shadow. (Need not be full.)- Specified by:
getCorrelationCaseForShadow
in interfaceMidpointFunctions
- Throws:
SchemaException
-
describeResourceObjectSetLong
public String describeResourceObjectSetLong(ResourceObjectSetType set) throws SchemaException, ExpressionEvaluationException, CommunicationException, SecurityViolationException, ConfigurationException, ObjectNotFoundException
Description copied from interface:MidpointFunctions
Returns longer version of human-readable description of the resource object set: . resource name . object type display name (if known) . object type ID (kind, intent) . flag whether we are using default type definition . object class Currently, object types are resolved and named using theResourceSchemaUtil.findDefinitionForBulkOperation(ResourceType, ShadowKindType, String, QName)
method that is used for import and reconciliation activities. Hence, the name should be quite precise in the context of these activities.
-
describeResourceObjectSetShort
public String describeResourceObjectSetShort(ResourceObjectSetType set) throws SchemaException, ExpressionEvaluationException, CommunicationException, SecurityViolationException, ConfigurationException, ObjectNotFoundException
Description copied from interface:MidpointFunctions
Short version ofMidpointFunctions.describeResourceObjectSetLong(ResourceObjectSetType)
: . only one of object type display name and type ID is shown; . object class is omitted when type is present
-
selectIdentityItemValues
public Collection<PrismValue> selectIdentityItemValues(@Nullable @Nullable Collection<FocusIdentityType> identities, @Nullable @Nullable FocusIdentitySourceType source, @NotNull @NotNull ItemPath itemPath)
Description copied from interface:MidpointFunctions
Selects specified values from all relevant identity data.- Specified by:
selectIdentityItemValues
in interfaceMidpointFunctions
- Parameters:
identities
- a collection of identities where we search for the datasource
- specification of a source we are looking for; `null` means "all sources" The source is currently matched using resource OID, kind, intent, and tag. SeeFocusIdentityTypeUtil.matches(FocusIdentitySourceType, FocusIdentitySourceType)
method.itemPath
- item that should be provided- See Also:
FocusIdentityTypeUtil.matches(FocusIdentitySourceType, FocusIdentitySourceType)
-
-