Five months ago I published the Alfresco Process Services SDK on my GitHub account, this module is dedicated to create extensions for APS in a consistent way.
The idea behind this contribution started for these two reasons:
- Help attendees during official APS courses to better understand the platform
- Help developers to quickly extend APS with new services and components
As an Alfresco Certified Instructor I have created and used this module during the sessions about APS held at the last Alfresco DevCon 2019 in Edinburgh. Using this SDK you can implement your own Java components and you can also build unit and integration tests for consolidating the overall solution.
This could be a good starting point for building your projects for giving it a minimum of quality needed to every customer. In TAI Solutions we are using this module also for building solutions for our customers and it seems that it is working very well
Currently the SDK is configured for APS 1.9.0.3 but it was tested also on APS 1.8 and 1.9. The structure of this module is strongly based on the current APS 1.x source code packaging, so if you know something about APS classpath, you should feel at home
Capabilities
Developers can implement their own solutions on top of Alfresco Process Services with the following supported features:
Runs the embedded container + H2 DB
Runs unit and integration tests
Packages both App ZIP and JAR with customization
All the APS Java Services supported (UserService, GroupService, TenantService and so on...)
No parent pom
Standard JAR packaging and layout
It works seamlessly with any Maven-compliant IDE
Prerequisites
JDK 1.8
Apache Maven 3.x (where x should be the latest version)
Enterprise Maven Repo Account: an active account for the Alfresco Maven Enterprise Repository to have access to the Enterprise artifacts. If you are an Alfresco Partner or an Alfresco Customer, you can raise a ticket in the Alfresco Support Portal asking for your own account credentials
Please let me know if you are interested to contribute on this project and any feedback is welcome.
More details are available in this post in my personal blog.
Hope this helps