Introduction🔗

The Pipeline has been designed as an extensible hierarchy of functionality which is fully publicly accessible. This allows third-party developers to create custom flow elements that focus on their core business logic, while also benefiting from the features of the Pipeline, such as build from configuration, automatic data file updates, result caching, web integration, etc.

Choosing the right classes to extend🔗

At the most basic level, all that is required to create a custom flow element is a class implementing the flow element interface.

However, there are various levels of base classes that build up functionality which a developer may wish to take advantage of. The diagram below shows this hierarchy and the features introduced at each level. Note that the precise details of class names, etc., will vary between languages.

Each level has associated classes as described by the following table:

Element Data Metadata Builder
Flow element Element data Element property metadata N/A
Aspect engine Aspect data Aspect property metadata Aspect Engine builder
On-premise Engine Aspect data Aspect property metadata On-premise aspect engine builder
Cloud Engine Aspect data Aspect property metadata Cloud engine builder

Examples🔗

Examples are provided which cover the creation of a custom flow element in a variety of scenarios.