# SynchronizationReactionType (Complex Type)

### Namespace: http://midpoint.evolveum.com/xml/ns/public/common/common-3

Reaction to a synchronization situation. Situation identifier must be unique in this set (i.e. a situation definition may occur only once for each situation). If there is no definition for a particular situation, there will be no reaction ("do nothing"). The set of situation reactions is considered to be unordered.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
name | property string | [0,1] |
description | property string | [0,1] | Free-form textual description of the object.
documentation | property string | [0,1] | Technical documentation for a particular object or construct.
situation | property SynchronizationSituationType | [1,1] | Defines a particular synchronization situation.
channel | property anyURI | [0,-1] |
synchronize | property boolean | [0,1] |
reconcile | property boolean | [0,1] |
reconcileAll | property boolean | [0,1] | If set to true, applicable synchronization reactions will attempt to reconcile the real attributes from all resource with the state of the midPoint repository.
limitPropagation | property boolean | [0,1] |
objectTemplateRef | reference ObjectReferenceType | [0,1] | Object template used in case the focus object is created or modified.
executeOptions | container ModelExecuteOptionsType | [0,1] | Model execute options that will be used when invoking this reaction.
condition | property ExpressionType | [0,1] | Expression that is evaluated to check whether this reaction is applicable in a particular context.
action | property SynchronizationActionType | [0,-1] |

- ### Items

  - #### name

    Flags: RAM,runtime

    Multiplicity: [0,1]

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Free-form textual description of the object. It is supposed to describe the object or a construct that it is attached to.

    This information may be presented to midPoint users, even to ordinary end users. For example role description may be presented to users when they are selecting roles to request. Therefore the description should be written in a language that the users can understand.

    Description is assumed to be a plan, non-formatted text. Amount of white space is considered insignificant. E.g. leading and trailing white space may be skipped, multiple spaces can be collapsed to one and so on.

  - #### documentation

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Technical documentation for a particular object or construct.

    The purpose of this element is to document system configuration and behavior. The documentation will not be presented to end users. In fact, it will probably not be presented at all in midPoint user interface. This documentation element is supposed to be a part of the technical documentation of midPoint deployment. The tools than generate deployment configuration will look for these elements and combine them to compiled documentation document.

    AsciiDoc formatting is assumed for this element. Any leading or trailing whitespace is skipped. Indentation equivalent to he indentation of the first non-blank line of text is also skipped.

  - #### situation

    Flags: RAM,runtime,AVals:5

    Multiplicity: [1,1]

    Defines a particular synchronization situation.

  - #### channel

    Flags: RAM,runtime

    Multiplicity: [0,-1]

  - #### synchronize

    Flags: RAM,runtime

    Multiplicity: [0,1]

  - #### reconcile

    Flags: RAM,runtime

    Multiplicity: [0,1]

  - #### reconcileAll

    Flags: RAM,runtime

    Multiplicity: [0,1]

    If set to true, applicable synchronization reactions will attempt to reconcile the real attributes from all resource with the state of the midPoint repository. This may require additional read and recompute, therefore may be slightly less efficient. If set to false, attribute values will not be reconciled. If set to true, the full user reconciliation will be done.

  - #### limitPropagation

    Flags: RAM,runtime

    Multiplicity: [0,1]

  - #### objectTemplateRef

    Flags: RAM

    Multiplicity: [0,1]

    Object template used in case the focus object is created or modified. This overrides other template definitions (system global, resource).

  - #### executeOptions

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Model execute options that will be used when invoking this reaction. Options explicitly specified here take precedence over any options derived from the context or other parameters (like "recompute"). So please use with care.

  - #### condition

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Expression that is evaluated to check whether this reaction is applicable in a particular context. It is assumed to return a boolean value. If it returns 'true' then this reaction will be applied. If it returns 'false' it will be ignored.

  - #### action

    Flags: RAM,runtime

    Multiplicity: [0,-1]