Old Notes About Mapping Implementation
OUTDATED
This page is outdated, it contains information that was not updated in a long time.
The described functionality may or may not work.
Do not rely on information provided on this page.
|
This is outdated. But it may still be worth updating someday. |
Place | What | Method | Default source | User, Focus | Source | Iteration+Token | Configuration | Assignment path variables | Containing object,"thisObject" | Projection, shadow,account | Resource | Other | Uses MappingEvaluator | Notes |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AssignmentEvaluator |
condition |
|
Y |
Y |
- |
- |
Y |
Y |
||||||
focus mappings |
|
Y |
Y |
Y |
Y |
Y |
uses LensUtil.createFocusMappingEvaluated mappings are stored into EvaluatedAssignment. |
|||||||
ObjectTemplateProcessor |
focus mappings |
|
Y |
Y |
Y |
- |
Y |
uses LensUtil.createFocusMapping |
||||||
Construction |
attributes, associations |
|
Y |
Y |
- |
Y |
Y |
Y |
Y |
associationTargetObjectClassDefinition |
N/A |
Evaluation is postponed. (To AssignmentProcessor.) |
||
CredentialsProcessor |
password mapping |
|
input (user password) |
Y |
- |
- |
Y |
- |
- |
Y |
Y |
- |
Y |
|
InboundProcessor |
attributes |
|
input (attribute value) |
Y |
- |
- |
- |
- |
- |
Y (except projection) |
Y |
- |
Y |
|
password, admin status, validFrom, validTo |
|
input (particular special property) |
Y |
- |
- |
- |
- |
- |
Y (except projection) |
Y |
- |
Y |
uses MappingEvaluator.evaluateMappingSetProjection (quite sophisticated code) |
|
OutboundProcessor |
attributes, |
|
- |
Y |
- |
Y |
Y |
- |
- |
Y (except shadow) |
Y |
associationTargetObjectClassDefinition,operation |
Y |
|
ActivationProcessor |
existence |
|
legal |
Y |
Y (only shadow) |
Y |
assigned, focusExists |
Y |
uses MappingEvaluator.evaluateMappingSetProjection (quite sophisticated code) |
|||||
administrative status, validFrom, validTo, lockout status |
|
input (various) |
Y |
Y |
administrativeStatus, legal, assigned, focusExists |
Y |
uses MappingEvaluator.evaluateMappingSetProjection (quite sophisticated code) |
|||||||
TODO |
Processing of mapping output triplets
Place | What | Where consolidated to delta(s) | See | Notes |
---|---|---|---|---|
AssignmentEvaluator, |
condition |
N/A |
||
focus mappings |
After processing all assignments. |
|
||
attributes, associations from assignments |
Later in ConsolidationProcessor/ReconciliationProcessor. Triples are stored in projCtx.constructionDeltaSetTriple. |
|||
ObjectTemplateProcessor |
focus mappings |
After processing a template (still within processTemplate method). |
|
|
CredentialsProcessor |
password mapping |
Just after evaluation. Very special code because of the nature of resource object passwords. |
|
|
InboundProcessor |
attributes |
Immediately after executing a single mapping (should be perhaps fixed). |
|
|
password, admin status, validFrom, validTo |
Immediately after executing a set of mappings for a given special attribute. |
|
Existing secondary deltas are removed, why? (line 667, 728) |
|
OutboundProcessor |
attributes, associations |
Later in ConsolidationProcessor/ReconciliationProcessor. Triples are stored in projCtx.outboundConstruction. |
||
ActivationProcessor |
existence |
Immediately after mapping evaluation. |
|
|
administrative status, validFrom, validTo, lockout status |
Immediately after mapping evaluation. |
|
||
TODO |
Places where triplets are processed:
-
MappingEvaluator → evaluateMappingSetProjection
-
InboundProcessor → evaluateInboundMapping
-
ObjectTemplateProcessor → computeItemDeltas
-
ConsolidationProcessor, ReconciliationProcessor (for accounts).
TODO
-
AssignmentProcessor.collectFocusTripleFromMappings always returns null - why?