xentara-plugin v1.2.1
The Xentara Plugin Framework
Loading...
Searching...
No Matches
Writing Service Providers
See also
Service Providers in the Xentara user manual

The Service Provider Object

A Xentara service provider is represented by an object of a custom service provider class derived from xentara::process::ServiceProvider. The service provider object will usually be a member of the plugin object.

The service provider object itself does not contain any functionality. Instead, it provides the following meta information about the service provider to Xentara:

The service provider object must also provide a callback to create the service provider environment, which contains the actual functionality.

The Service Provider Environment

The actual functionality of a service provider is encapsulated is a custom class derived from xentara::process::ServiceProvider::Environment. The environment should contain all the global functionality of the service provider that is not directly tied to a specific microservice.

The service provider environment provides a callbacks to create microservices. See Creating Plugin Element Objects on how plugin elements are created.

Microservice Classes

See also
Microservices in the Xentara user manual

Each type of microservice supported by the service provider is represented by an object of a custom microservice class type derived from xentara::process::MicroserviceClass. The microservice class object will usually be a member of the service provider object.

The microservice class object itself does not contain any functionality. Instead, it provides the following meta information about the microservice type to Xentara:

The actual microservices themselves are created by the service provider environment.

Microservices

See also
Microservices in the Xentara user manual

The actual functionality of a microservice is provided by a custom class derived from xentara::process::Microservice. This class should contain all microservice specific functionality.

A microservice will usually publish at least one task that can be scheuled in an execution pipeline. See Publishing Tasks on how to publish tasks.

A microservice may also publish configuration and status attributes. See Publishing Attributes on how to publish attributes in general, and Publishing Config Parameters as Xentara Attributes on how to publish configuration attributes.

A microservice may also publish one or more event. See Publishing Events on how to publish events.