Alfresco SDK is a development kit that provides an easy to use approach to developing applications and out-of-process extensions for Content Services. With this SDK you can develop, package, test, run, document and release your extension project.
The following picture illustrates where the SDK fits into the big picture:
The SDK is a fundamental tool provided by Alfresco to developers to build customizations and extensions for the Content Services Platform. It is based on the Spring Integration tooling library and the Spring Boot library.
Alfresco SDK is released under Apache License version 2.0 and supports Content Services Enterprise Edition as well as Community Edition. If you’re an Enterprise customer, please check the Supported Platforms section in the Alfresco Content Services documentation for the version you’re using. If your version is in Limited or Full Support and you need help, contact your first line of support.
The 6.0 release took advantage of Semantic Versioning (SEMVER), which means that it is not directly compatible with the previous releases of the SDK.
There is no direct upgrade path from previous versions of the SDK because version 6.0 is an additional SDK to support out-of-process extensions, rather than an updated 4.x version. The Alfresco In-Process SDK (see the Alfresco In-Process SDK documentation) is still needed for a lot of the extension points, such as content modelling. For more information on In-Process extension points, see the In-Process platform extension points section in the Alfresco Content Services documentation.
Alfresco SDK integrates with the Alfresco Event Gateway that is part of Content Services. For more information, see Using the Event Gateway.
If you have an existing project with business logic that could be lifted out and implemented as an external service, then the recommended approach is to create a new SDK project and start using the event system to implement the business logic. Any business logic that is executed as a result of an action in the Repository, such as document or folder uploaded, updated, deleted, can be reimplemented as an external out-process extension utilizing the new event system.
The SDK includes Java libraries for the following:
- Alfresco Java Event API - enables an Alfresco developer to work with the new Alfresco Event system from Java.
- Alfresco Java ReST API - enables an Alfresco developer to work with the Alfresco ReST API 1.0 from Java.
Make sure to read through the platform architecture before continuing as this section assumes familiarity with the Content Services architecture and event system. For more information on platform architecture, see the Platform architecture section in the Alfresco Content Services documentation.
If you are not familiar with Alfresco ReST API version 1.0, then read through the ReST API Guide section of the Alfresco Content Services documentation.