Suppression de l'action finale


Cette page ne doit être appliquée que si le script vous demande de passer la migration manuelle code.20230918-Workflow-Final-Step

Cette migration assistée n'est pas obligatoire mais fortement conseillée

Si cette migration vous est demandée, c'est qu'il y a une action 666 dans votre cycle de vie. Elle était là pour compenser un bug que nous avons corrigé. Il est donc recommandé de la supprimer !

Exemple d'action 666 à supprimer :

<action id="666" name="FALSE_END_ACTION">
            <restrict-to>
                <conditions type="AND">
                    <condition type="avalon">
                        <arg name="role">org.ametys.plugins.forms.workflows.FalseCondition</arg>
                    </condition>
                </conditions>
            </restrict-to>
            <results>
                <unconditional-result old-status=" " status=" " step="-1" />
            </results>
        </action>

Il faut aussi supprimer toutes les références dans le cycle de vie à cette action :

Exemple de référence à supprimer :

<step id="2" name="plugin.forms-workflows:PLUGINS_FORMS_MANAGER_WORKFLOW_STATE_REFUSED_MANAGER" >
            <meta name="status">refused</meta>
            <actions>
                <common-action id="666" />
            </actions>
</step>

devient ...

<step id="2" name="plugin.forms-workflows:PLUGINS_FORMS_MANAGER_WORKFLOW_STATE_REFUSED_MANAGER" >
          <meta name="status">refused</meta>
</step>

puis il faut supprimer aussi les fonctions java et leur déclaration dans le plugin.xml

Par exemple, ici il faut supprimer org.ametys.plugins.forms.workflows.FalseCondition :

/**
 * Condition which always return false
 */
public class FalseCondition extends AbstractWorkflowComponent implements Condition
{
    @Override
    public boolean passesCondition(Map transientVars, Map args, PropertySet ps) throws WorkflowException
    {
        return false;
    }
}

... et supprimer sa déclaration dans le plugin.xml

<component role="org.ametys.plugins.forms.workflows.FalseCondition"
                       class="org.ametys.plugins.forms.workflows.FalseCondition"
                       id="org.ametys.plugins.forms.workflows.FalseCondition" />

Pour finir dans le plugin.xml, il faut supprimer les dernières références à l'action 666.
Elle peut être présente dans les actions à exclure dans la déclaration des boutons du cycle de vie :

Par exemple :

<extension id="entry-form-workflow-steps.entry-form-comment"
                       point="org.ametys.core.ui.RibbonControlsManager"
                       class="org.ametys.plugins.forms.workflow.FormEntryWorkflowStepsClientSideElement">
                <workflow name="entry-form-comment">
                    <workflow-actions mode="exclude">
                        <action>666</action>
                    </workflow-actions>

....
                </workflow>
          </extension>

A remplacer par ...

<extension id="entry-form-workflow-steps.entry-form-comment"
                       point="org.ametys.core.ui.RibbonControlsManager"
                       class="org.ametys.plugins.forms.workflow.FormEntryWorkflowStepsClientSideElement">
              <workflow name="entry-form-comment">

....
                </workflow>
          </extension>
Retour en haut