This concept belongs to the BL-127 "As a user I can activate content so that it gets published" story. The goal is to allow users to activate/deactivate the content. ATM, the legacy commands from the Admin Interface legacy module will be used.
The goal is to allow users to activate/deactivate the basic content (pages, assets, contacts) from author to public instance(s), and to show developers the way to provide this functionality for their own content types.
The solution must be flexible and allow dynamic replacing of the behavior, e.g. by the workflow modules.
A fundamental premise here is that in M5 workflow will be an EE feature only. In CE only direct activation/deactivation will be available (no workflow engine involved).
The Activation / Deactivation actions will be created and linked to proper buttons in the action bar of required apps. Actions will execute 'activate' and 'deactivate' commands defined in appropriate catalogs (or the default ones) by calling
executeCommand(String catalog, String command, Map<String,Object> parameters) method.
The activation module will implement the basic CE de/activation operations by means of commands.
The workflow module will implement those commands using a workflow engine.