close

Filter

loading table of contents...

Release Notes / Version 11.2307

Table Of Contents

New Recommended Final Action For Localization Workflows: CleanInTranslationFinalAction

For all localization workflows, we offer a new FinalAction for cleaning up the in-translation state for involved contents early, thus, earlier than done by CleanInTranslation scheduled task.

The usage within your workflows looks like follows:

<FinalAction class="com.coremedia.translate.workflow.CleanInTranslationFinalAction"
             derivedContentsVariable="derivedContents"
             masterContentObjectsVariable="masterContentObjects"/>

Note, as stated below, that it is highly recommended adapting the configuration of RollbackTranslationAction and CompleteTranslationAction to prevent false-negative in-translation states.

The scheduled task CleanInTranslation will remain as is and still offers a kind of garbage collection for more irregular states to clean-up.

Find more details in Blueprint Developer Manual, also regarding the new parameter for RollbackTranslationAction and CompleteTranslationAction , in section Predefined Translation Workflow Actions within section Translation Workflow .

Motivation

CleanInTranslationFinalAction provides more robust and earlier handling of the in-translation state as implicit processing within RollbackTranslationAction and CompleteTranslationAction . It will clear the state even for escalated workflows and handles irregular content states much more robust (such as derived contents meanwhile deleted during the execution of a translation workflow).

Having this, the default mode (explicitly triggered by skipCleanInTranslation="false" ) of RollbackTranslationAction and CompleteTranslationAction is considered deprecated, and you are encouraged to switch to skipCleanInTranslation="true" and enabling the CleanInTranslationFinalAction .

Upgrade Notes

Upgrade steps are optional but highly recommended, to benefit from enhancements provided by the new CleanInTranslationFinalAction .

translation.xml and synchronization.xml use the new CleanInTranslationFinalAction .

synchronization.xml: To benefit from the new behavior during synchronization workflows, you have to re-upload synchronization.xml as described in Blueprint Developer Manual:

cm upload -n /com/coremedia/translate/workflow/synchronization.xml

translation.xml: The template workflow translation.xml within CoreMedia Blueprint got adapted according to the recommended configuration. To benefit from this adaptations, ensure to re-upload translation.xml in case you use it without modifications.

Custom Translation Workflows: To adapt your custom translation workflows, ensure adding CleanInTranslationFinalAction as final action and disable the internal cleanup of the in translation state of RollbackTranslationAction and CompleteTranslationAction by adding a parameter skipCleanInTranslation as here, for example:

<Action class="com.coremedia.translate.workflow.CompleteTranslationAction"
        derivedContentsVariable="derivedContents"
        masterContentObjectsVariable="masterContentObjects"
        performerVariable="performer"
        skipCleanInTranslation="true"/>

<!-- derivedContents/masterContentObjects: Not required anymore
        iff. skipCleanInTranslation="true".
-->
<Action class="com.coremedia.translate.workflow.RollbackTranslationAction"
        contentsVariable="createdContents"
        skipCleanInTranslation="true"/>

<!-- This action will instead take over the clean-up. -->
<FinalAction class="com.coremedia.translate.workflow.CleanInTranslationFinalAction"
             derivedContentsVariable="derivedContents"
             masterContentObjectsVariable="masterContentObjects"/>

Not disabling the internal clean-in-translation behavior of these actions may result in false-negative in translation states represented to editors. Disabling it, but not adding CleanInTranslationFinalAction on the other hand will cause false-positive in translation states, that are only cleared by CleanInTranslation scheduled task each 15 minutes by default.

Regarding RollbackTranslationAction , there is no need of setting derivedContentsVariable or masterContentObjectsVariable , as they are unused, if skipCleanInTranslation is set to true .

(CMS-20035)

Search Results

Table Of Contents
warning

Your Internet Explorer is no longer supported.

Please use Mozilla Firefox, Google Chrome, or Microsoft Edge.