Refactoring of customAction configuration
Opened this issue · 1 comments
gskrobisz commented
💥 Proposal
While implementing customActions I've encountered several issues and it would be nice to discuss how to approach them:
- There is an inconsistency in the configuration of custom-action (definition and implementation provided via DeploymentManager) and custom-link (configuration only).
- A customAction seems to be available only in top-right section of Nussknacker frontend ("process-info-panel").
- I can define an editor for CustomActionParameter, but not validator.
- DTO's used to invoke customAction are spread through different modules. Those used for deployment are in nussknacker-restmodel, and customAction is currently in nussknacker-ui.
- What is recommended approach to provide custom definition of invokeCustomAction in PeriodicDeploymentManager?
Some elements that are usefull for invokeCustomAction exist only in PeriodicDeploymentManager.apply and are not accesible from within class. - What is recommended approach to call other NK services from within PeriodicDeploymentManager?
E.g. invoke addComment (ProcessActivityRepository). - Method PeriodicDeploymentManager.apply seems to be too long.
jedrz commented
What's more the following features would be useful too:
- Allow to configure permissions to invoke the custom action.
- Allow to configure where the button should be displayed (position and panel). Integrate with
processToolbarConfig
. - Allow to hide completely the custom action button. Logic to hide/show and disable/enable the button should depend on scenario json (e.g. show the button only if the scenario uses some components and enable the button only in some statuses of the scenario).