Search in sources :

Example 1 with ClockworkInboundsProcessing

use of com.evolveum.midpoint.model.impl.lens.projector.focus.inbounds.ClockworkInboundsProcessing in project midpoint by Evolveum.

the class InboundProcessor method processInbounds.

@ProcessorMethod
<F extends FocusType> void processInbounds(LensContext<F> context, String activityDescription, XMLGregorianCalendar now, Task task, OperationResult result) throws SchemaException, ExpressionEvaluationException, ObjectNotFoundException, ConfigurationException, CommunicationException, SecurityViolationException {
    MappingEvaluationEnvironment env = new MappingEvaluationEnvironment(activityDescription, now, task);
    ClockworkInboundsProcessing<F> evaluation = new ClockworkInboundsProcessing<>(context, beans, env, result);
    evaluation.collectAndEvaluateMappings();
    context.checkConsistenceIfNeeded();
    context.recomputeFocus();
    medic.traceContext(LOGGER, activityDescription, "inbound", false, context, false);
    // It's actually a bit questionable if such cross-components interactions should be treated like this
    // or in some higher-level component. But let's try this approach until something nicer is found.
    contextLoader.updateArchetypePolicy(context, result);
    contextLoader.updateArchetype(context, task, result);
    contextLoader.updateFocusTemplate(context, result);
    context.checkConsistenceIfNeeded();
}
Also used : ClockworkInboundsProcessing(com.evolveum.midpoint.model.impl.lens.projector.focus.inbounds.ClockworkInboundsProcessing) MappingEvaluationEnvironment(com.evolveum.midpoint.model.common.mapping.MappingEvaluationEnvironment) ProcessorMethod(com.evolveum.midpoint.model.impl.lens.projector.util.ProcessorMethod)

Aggregations

MappingEvaluationEnvironment (com.evolveum.midpoint.model.common.mapping.MappingEvaluationEnvironment)1 ClockworkInboundsProcessing (com.evolveum.midpoint.model.impl.lens.projector.focus.inbounds.ClockworkInboundsProcessing)1 ProcessorMethod (com.evolveum.midpoint.model.impl.lens.projector.util.ProcessorMethod)1