Blade types
There are three types of Caplin Platform Blades.
Adapter blade
This type of blade connects to, and supplies data to, a Liberator and/or Transformer. It consists of:
-
An integration adapter (an executable binary file).
-
Configuration for the Adapter (including its DataSource configuration)
-
Configuration for the core components (Liberator and/or Transformer). This configuration enables the Adapter to exchange data with these core components.
Integration Adapters can be written in Java using the Caplin Integration Suite, or in C using the C DataSource API.
The diagram below illustrates the internal structure of a Java Adapter blade. Optional directories are shown in grey.
For example Gradle projects that demonstrate how to build blades with the structure above, see the Project Templates project in Caplin’s GitHub repository.
Service blade
This type of blade contains a Liberator or Transformer module written in C, Java, or Lua. For example, a permissioning auth (authorisation) module that is loaded into Liberator, or Transformer’s Refiner (filtering and sorting) service.
For information on building Java Transformer service modules, see the links below:
Config blade
This type of blade consists solely of configuration files. Config blades are used for the following purposes:
-
To enable and configure built-in functionality in Liberator and Transformer. A config blade is a convenient way to package related configuration options required by a built-in service. For a list of config blades in Liberator and Transformer, see Built-in blades.
-
To deploy an adapter’s configuration files without deploying the adapter’s binary. This is commonly done during development of an adapter, when you need your adapter’s configuration deployed to one or more Deployment Frameworks, but you want to run the adapter manually within your IDE.
The diagram below illustrates how the LiberatorJMX config blade is packaged within the Liberator kit file. For clarity, some directories and files have been hidden.
$ ./dfw activate LiberatorJMX
$ ./dfw deactivate LiberatorJMX