Syncope uses a workflow concept to define transition task at different user states.
The aim of this page is to show how arbitrary workflow engines can be used.
You can choose within your workflow.properties file of your overlay project which Workflow engine adapter should be used.
Syncope comes with a default ActivitiUserWorkflowAdapter implementation for Activiti BPM.
If you want to attach a different workflow engine to your syncope project, you need to provide an implementation of UserWorkflowAdapter interface. This can usually be done best by overriding (abstract) methods in AbstractUserWorkflowAdapter.
If you don't want to use a (full featured) workflow engine at all, you can also choose NoOpUserWorkflowAdapter as your Workflow adapter.
Custom WorkflowAdapter implementation can be deployed: