Class AssignmentPathImpl
java.lang.Object
com.evolveum.midpoint.model.impl.lens.assignments.AssignmentPathImpl
- All Implemented Interfaces:
- AssignmentPath,- DebugDumpable,- ShortDumpable,- Serializable,- Cloneable
Path from focus object to a given assignment.
 Contains also some (although not complete) information on evaluation of individual segments.
- Author:
- semancik
- See Also:
- 
Field SummaryFields inherited from interface com.evolveum.midpoint.util.DebugDumpableINDENT_STRING
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidadd(AssignmentPathSegmentImpl segment) beforeLast(int n) clone()Shallow clone.cloneFirst(int n) collectExtensions(int startAt) @Nullable AssignmentPathVariablesintcountTargetOccurrences(ObjectType target) debugDump(int indent) booleanequivalent(AssignmentPath other) Preliminary (limited) implementation.first()Used as a source for thisObject variable.@NotNull List<ObjectType>Returns a "user understandable" part of this path.Returns the limitation for "other" privileges that are delegated through this path.@NotNull PrismContextIn the context of meta-roles this is the role that the currently-processed inducement "applies to".getSegment(int index) Returns segment specified by index.@NotNull List<AssignmentPathSegmentImpl>booleanisEmpty()last()booleanmatches(@NotNull List<OrderConstraintsType> orderConstraints) Returns true if the path matches specified order constraints.voidShow the content of the object intended for diagnostics.intsize()toAssignmentPathBean(boolean includeAssignmentsContent) toString()Methods inherited from class java.lang.Objectequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.model.api.context.AssignmentPathcontainsDelegation, getAtMethods inherited from interface com.evolveum.midpoint.util.DebugDumpabledebugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.util.ShortDumpableshortDump, shortDumpLazily
- 
Constructor Details- 
AssignmentPathImplpublic AssignmentPathImpl()
 
- 
- 
Method Details- 
getSegments- Specified by:
- getSegmentsin interface- AssignmentPath
 
- 
getSegmentDescription copied from interface:AssignmentPathReturns segment specified by index. Negative indexes work in reverse direction.- Specified by:
- getSegmentin interface- AssignmentPath
 
- 
add
- 
first- Specified by:
- firstin interface- AssignmentPath
 
- 
isEmptypublic boolean isEmpty()- Specified by:
- isEmptyin interface- AssignmentPath
 
- 
sizepublic int size()- Specified by:
- sizein interface- AssignmentPath
 
- 
last- Specified by:
- lastin interface- AssignmentPath
 
- 
beforeLast- Specified by:
- beforeLastin interface- AssignmentPath
 
- 
countTargetOccurrences- Specified by:
- countTargetOccurrencesin interface- AssignmentPath
 
- 
getFirstOrderChainDescription copied from interface:AssignmentPathReturns a "user understandable" part of this path. I.e. only those objects that are of "order 1" above the focal object. E.g. from chain of jack =(a)=> Engineer =(i)=> Employee =(a)=> PersonMetarole =(i2)=> Person =(i)=> Entity the result would be Engineer -> Employee -> Person -> Entity TODO find a better name- Specified by:
- getFirstOrderChainin interface- AssignmentPath
 
- 
getProtoRoleDescription copied from interface:AssignmentPathIn the context of meta-roles this is the role that the currently-processed inducement "applies to". I.e. the role that would contain this inducement in case that meta-roles were not used. Technically, this is the last element in the "first order chain" or roles. Note: proto- is the opposite of meta-- Specified by:
- getProtoRolein interface- AssignmentPath
 
- 
cloneDescription copied from interface:AssignmentPathShallow clone.- Specified by:
- clonein interface- AssignmentPath
- Overrides:
- clonein class- Object
 
- 
cloneFirst- Specified by:
- cloneFirstin interface- AssignmentPath
 
- 
toString
- 
debugDump- Specified by:
- debugDumpin interface- DebugDumpable
 
- 
shortDumpDescription copied from interface:ShortDumpableShow the content of the object intended for diagnostics. This method is supposed to append a compact, human-readable output in a single line. Unlike toString() method, there is no requirement to identify the actual class or type of the object. It is assumed that the class/type will be obvious from the context in which the output is used.- Specified by:
- shortDumpin interface- ShortDumpable
- Parameters:
- sb- StringBuilder to which to a compact one-line content of the object intended for diagnostics by system administrator should be appended.
 
- 
toAssignmentPathBean- Specified by:
- toAssignmentPathBeanin interface- AssignmentPath
 
- 
getPrismContext
- 
collectExtensions- Specified by:
- collectExtensionsin interface- AssignmentPath
- Throws:
- SchemaException
 
- 
matchesDescription copied from interface:AssignmentPathReturns true if the path matches specified order constraints. All of them must match. Although there are some defaults, it is recommended to specify constraints explicitly. Currently not supported on empty paths. Not all parts of OrderConstraintsType are supported. Namely, resetOrder item has no meaning here.- Specified by:
- matchesin interface- AssignmentPath
 
- 
equivalentDescription copied from interface:AssignmentPathPreliminary (limited) implementation. To be used to compare paths pointing to the same target object. Use with care.- Specified by:
- equivalentin interface- AssignmentPath
 
- 
getOtherPrivilegesLimitationDescription copied from interface:AssignmentPathReturns the limitation for "other" privileges that are delegated through this path.- Specified by:
- getOtherPrivilegesLimitationin interface- AssignmentPath
 
- 
getConstructionThisObjectUsed as a source for thisObject variable. This variable is officially deprecated, but it is used as a legacy role pointer inAssociationFromLinkExpressionEvaluator. This is the specification from common-3 documentation: "The legacy algorithm is guaranteed to work up to meta-role level. For plain roles (order-one inducement) the role itself is selected. For meta-roles (order-two inducement) the first (plain) role is selected. At the meta-meta role level (order-three inducement) and above the behavior is formally undefined and it may change in any future versions. However, current behaviour roughly corresponds to assignment path index -2." Should be removed or adapted on appropriate occasion.
- 
computePathVariables- Throws:
- SchemaException
 
 
-