Blueprint Developer Manual / Version 2304
Table Of ContentsThis action automatically updates properties of derived contents after changes in their master content since its last translation. See also the API documentation in AutoMergeTranslationAction and Content Type Model - Properties for Translation for the behavior of the automerge feature.
performerVariable
| |
Required | yes |
Description | The name of the variable that contains the user in whose name this action performed. Typically, the user has been retrieved previously by the action described in Section, “ExtractPerformerAction”. |
derivedContentsVariable
| |
Required | yes |
Description | The name of the variable that contains all translated content items. |
masterContentObjectsVariable
| |
Required | yes |
Description | The name of the variable that contains all master content objects. |
resultVariable
| |
Required | yes |
Description | The name of the result variable to store derived contents in, whose properties could not be updated automatically. |
autoMergePredicateFactoryName
| |
Required | no |
Description |
The name of a custom Spring bean that implements interface AutoMergePredicateFactory and that is used to decide which content properties are updated automatically.
If this attribute is not specified, the Spring bean with name |
autoMergeStructListMapKeyFactoryName
| |
Required | no |
Description |
The name of a custom Spring bean that implements the interface AutoMergeStructListMapKeyFactory and that is used to select the merge algorithm for nested struct list properties. For some struct lists, like the placements of a page grid, a better merge algorithm can be used, which enables automatic updates of a derived content for more types of changes. To this end, the merge algorithm can use a selected property of the struct values to find corresponding values in master and derived contents. The default implementation DefaultAutoMergeStructListMapKeyFactory is configured in the Blueprint Spring application context for some standard properties like the page grid placements.
If this attribute is not specified, the default implementation
|
translatablePredicateName
| |
Required | no |
Description |
The name of a custom Spring bean that implements the interface TranslatablePredicate and that is used to decide if a property is translatable. If the value is an empty string, then an instance of BySchemaAttributeTranslatablePredicate will be used. Translatable properties are handled differently by the merge algorithm, most importantly there won't be warnings about merge conflicts, if the property has also changed in the derived content, because that's the expected state for translated properties.
If this attribute is not specified, the Spring bean with name |
Table 5.35. Attributes of AutoMergeTranslationAction
<AggregationVariable name="derivedContents" type="Resource"/> <AggregationVariable name="masterContentObjects" type="Resource"/> <AggregationVariable name="autoMergeConflicts" type="Resource"/> <Variable name="performer" type="User"/> ... <UserTask name="Translate" successor="FollowUpAction"> ... <EntryAction class="com.coremedia.translate.workflow.AutoMergeTranslationAction" derivedContentsVariable="derivedContents" masterContentObjectsVariable="masterContentObjects" resultVariable="autoMergeConflicts" performerVariable="performer"/> ... </UserTask>
Example 5.44. Usage of AutoMergeTranslationAction