Migration notes 4.0.0
This page explains the changes required to migrate to the stated version of the Sign-Off Module.
Migrate to 4.0.0
Upgrading from version 3.1.0 - see Sign-Off Module 4.0.0 Release Notes.
The Sign-Off Module is using ActivePivot 5.10.6 and ActiveUI 5.0.6.
For new features and fixes included in these releases, please see the ActiveUI documentation and ActiveUI Migration Notes, and the release notes for ActivePivot.
Headline announcement
-
Renaming of module signoff-core to workflow-core and renaming of packages
- The module sign-off core has been renamed to workflow-core
- In the workflow-core module, the packages com.activeviam.signoff.core.* have been renamed to com.activeviam.workflow.core.*
-
Improvements in the way sample workflows are defined
-
Activiti signals are no longer used; the roll-back action is now used instead.
- The method
signalEvent
has been removed from the interface IKeyedObjectWorkflowService and the class AKeyedObjectWorkflowService that implements that interface. - The methods
getRetryPeriodSignal
andgetNbMaxRetriesSignal
have been removed from the class AKeyedObjectWorkflowService. - In the REST service SignOffProcessInstanceWorkflowRestController, the mapping for updateSignal has been removed. The roll-back is now performed by re-initiating the sign-off task.
- A ROLL_BACK action has been added to the Action enum in the ISignOffProcessInstanceWorkflowService interface.
- Parts of the workflow using signals have been removed in the files
sign-off-process-four-eyes.bpmn
,sign-off-process-four-eyes-kpi.bpmn
andsign-off-process-simple.bpmn
. Instead, sequence flows leading to the ‘UPDATE’ service task are now used to re-initiate tasks.
- The method
-
User tasks have been added for adjustment operations (requests for adjustment creation and deletion) to use Activiti for the permissioning of those operations instead of logic coded in Java.
- The REQUEST_ADJUSTMENT and REQUEST_ADJUSTMENT_DELETION actions have been added to the Action enum in the ISignOffProcessInstanceWorkflowService interface.
- In the files
sign-off-process-four-eyes.bpmn
,sign-off-process-four-eyes-kpi.bpmn
andsign-off-process-simple.bpmn
, the service tasks ‘REQUEST_ADJUSTMENT’ and ‘REQUEST_ADJUSTMENT_DELETION’ have been added to handle the adjustments creation and deletion requests for adjustments respectively. - The class SignOffAdjustmentExecutionService interacts with the Activiti workflows (via the method
transitionTaskToInitiated
).
-
Permissioning: the concepts of ‘initiating user’ and ‘service user’ have been introduced
- In the file
SecurityConfig
, the user “controller” has been introduced. Service tasks can use this for roll-back operations. - In the interface ISignOffProcessInstanceWorkflowService, the constant SERVICE_USER_NAME is used to refer to the “controller” user, and the constants
INITIATING_USER (equal to “initiatingUser”) and SERVICE_USER (equal to “serviceUser”) are defined.
- In the implementation of this interface, the “initiatingUser” and “serviceUser” values are used as variables in the Activiti workflow,
and in the workflow definition files
sign-off-process-four-eyes.bpmn
,sign-off-process-four-eyes-kpi.bpmn
andsign-off-process-simple.bpmn
to restrict user actions such that only the initiating user or the service user can trigger the roll-back of a sign-off task instance.
note
Consequently, if an external application requests the roll-back of a task, the thread that is used to request the roll-back must be identified as either the service user or the initiating user.
- In the file
-
-
Possibility to delete individual adjustments : the deletion of adjustments can now be requested by executionId.
-
Adjustments API : the methods in the interface ISignOffAdjustmentExecutionService and in its implementation SignOffAdjustmentExecutionService have been changed:
- the method
requestAdjustmentExecution
has been replaced by two methods to distinguish between:- the request to execute existing recurring adjustments, for which the persistence in the application database is not needed (method
requestRecurringAdjustmentExecution
) - the request to execute newly defined adjustments, for which the persistence in the application database is needed (method
requestAdjustmentExecutionAndPersistDefinition
)
- the request to execute existing recurring adjustments, for which the persistence in the application database is not needed (method
- the method
requestAdjustmentExecutionDeletion
now has an additional boolean argument:isRollback
- the method
-
Upgrade to ActivePivot 5.10.6 and ActiveUI 5.0.6
- The upgraded ActiveUI starter application now uses a Module Federated application which means that all plugins will have to be imported and the index.ts file stores the Extension definition.
- Starter application provided is configured to connect to the FRTB and Sign-Off servers.
-
Helper classes to create DTOs
- The AdjustmentWorkflowConverter and InstanceWorkflowConverter classes have been added to create DTOs. They are imported into the SignOffAppConfig class and are used in the SignOffAdjustmentExecutionService, ExportStatusService, ExportStatusTask, SignOffProcessInstanceWorkflowService and ApplicationSignOffRestClient classes.
-
Exception handling in RESTful services
- The SignOffProcessExceptionHandler class has been modified to simplify the handling of exceptions in the UI.
Configuration files
Files Modified
application.yml
Deleted properties:
Property Name | Comment |
---|---|
signal-retries.nb-entries | Used with Activiti signals. As signals are no longer used in workflows, these properties are no longer needed. |
signal-retries.retry-delay-in-milliseconds | As above. |
Files Deleted
None
Databases
No changes
Datastores
No changes
Cube schema
No changes
Measures
No changes
Other changes
None