Transformer Pipeline Module API Reference  8.0.2.290852-a608fcd3
Configuration: Pipeline

The configuration options documented in this section allow pipelines to be defined that react to object events.


pipeline-logflags

Type: String Array
Default: None

Set the logging flags for a dynamic pipeline


pipeline-paths

Type: String Array
Default: None

Paths where pipeline scripts and libraries can be found.

The scripts can be separated between directories to aid maintainability.

%r/lib/pipeline is always defined since that is where the core Caplin supplied packages reside.


logfile

Type: String
Default: pipeline.log

Specify the name of the logfile to direct all pipeline messages to. All log messages generated by the Logging routines package are also sent to this file.


log-level

Type: String
Default: INFO

Specify the level at which logs are reported. This can take the following values (in order of decreasing severity/increasing verbosity):

log-level name Description
CRIT Reports critical errors that prevent the application from running.
ERROR Reports serious errors regarding network connections and all errors included in the CRIT log level.
NOTIFY Reports errors regarding data corruptions and all errors included in the ERROR and CRIT log levels.
WARN Reports minor errors and all errors included in the NOTIFY, ERROR and CRIT log levels.
INFO Reports events and information regarding normal operation, and all errors included in the WARN, NOTIFY, ERROR and CRIT log levels.
DEBUG Reports tracing information and all logs at a higher level.
FINER Reports more deatiled tracing information and all logs at a higher level.
FINEST Reports more deatiled tracing information and all logs at a higher level.

pipeline-share-state

Type: Boolean
Default: FALSE

Allow pipeline states to be shared.

If the option is configured then a single pipeline state is loaded per-thread per pipeline file. This option is used to save memory.


javascript-bootstrap-file

Type: String
Default: None

Bootstrap script for Javascript scripts


add-pipeline

Configuration group add-pipeline

Start a pipeline configuration group.

Format:

add-pipeline
    id                  [value]
    pipeline-file       [value]
    listener-regex      [values]
    provider-regex      [values]
    initialise-func     [value]
    update-func         [value]
    nodata-func         [value]
    request-func        [value]
    discard-func        [value]
    no-delay-load
    add-info            [value] [value]
end-pipeline

required-fields

Type: String Array
Default: None

Required fields


udp-command

Type: String Array
Default: None

This option defines a list of UDP commands that the defined udpsig-func wishes to receive.

add-pipeline
udp-command source_up
udpsig-func udpsig
pipeline-file script.lua
end-pipeline

add-info

Type: String Array
Default: None

Insert information into the database


exclude-regex

Type: String Array
Default: None

List of regular expressions that if the symbolname matches should be excluded from being processed by this pipeline.


listener-regex

Type: String Array
Default: None

This option defines a list of regular expressions that the defined update-func wishes to receive.

Similarly, exclude-regex defines a list of regular expressions that will be excluded from the matching process.

add-pipeline
listener-regex ^/I/.*\.L
exclude-regex ^/I/VOD.L
update-func update
pipeline-file script.lua
end-pipeline

provider-exclude-regex

Type: String Array
Default: None

Regex to not match for providers


provider-regex

Type: String Array
Default: None

Regex to match


id

Type: String
Default: None

A unique identifier for the pipeline, this value is used by the add-info configuration option and is also logged to the log file at many points.

If no id is defined, then one will be automatically generated.


type

Type: Integer
Default: 0
Acceptable Values:

NameValueDesc
none0Default value
default1This pipeline is a default which should capture all updates not caught by other pipelines

Type for this pipeline


flags

Type: Integer
Default: 0
Acceptable Values:

NameValueDesc
none0No flags
manyprovider1The pipeline should be asked many times to provide the data
initallatstart2The init function should be called when the Transformer starts up
clearupdate4Incoming updates should be cleared to prevent processing by other modules/pipelines
suppressupdate8Incoming updates should be prevented from being distributed to connected peers
accessory16Subscriptions on this pipeline are accessories

Flags for this pipeline


pipeline-file

Type: String
Default: None


initialise-func

Type: String
Default: None

The name of the pipeline function to call when the script is first loaded.

The signature of the function should be:

function initialise()

The initialise function is called when the script is loaded. It may be called multiple times depending on the setting of num-threads option.

A script is normally loaded when a matching update is received, if you want the initialise function to be called when the Transformer is started up use the no-delay-load option.

Note
This function is always called on the main thread.

update-func

Type: String
Default: None

The name of the Lua function to call when an update matching the listener-regex pattern is received.

The signature of the function should be:

function update(update)

Where update is of type dsdata (see DSData Update Packets).

Note
This function may be called on any of the slave threads (see num-threads)

nodata-func

Type: String
Default: None

The name of the Lua function to call when a nodata message for a symbol matching the listener-regex pattern is received.

The signature of the function should be:

function nodata(peer, symbolname, flags)

The parameter flags should not be inspected since it has no significence.

Note
This function may be called on any of the slave threads (see num-threads)

status-func

Type: String
Default: None

This configuration option is currently unused and is present for consistency only.


request-func

Type: String
Default: None

The name of the Lua function to call when an update matching the provider-regex pattern is received.

The signature of the function should be:

function request(peer, symbolname)

This function should return 0 if the request couldn't be handled, or 1 if it could.

This function will be called should either a module or a connected DataSource peer require updates to this symbol.

Note
This function is always called on the main thread.

discard-func

Type: String
Default: None

The name of the pipeline function to call when an update matching the provider-regex pattern is received.

The signature of the function should be:

function discard(peer, symbolname)

This function should return 0 if the discard couldn't be handled, or 1 if it could.

The discard function will be called when no modules or peers wish to receive updates for the symbol.

Note
This function is always called on the main thread.

udpsig-func

Type: String
Default: None

The name of the Lua function to call when a UDP signal containing a command message matching (one of) the configured udp-command is received.

The signature of the function should be:

function udpsig(msg)

The parameter msg will contain the UDP message the first field of which will be the UDP command.

Note
This function may be called on any of the slave threads (see num-threads)

no-delay-load

Type: Boolean
Default: FALSE

This option forces the pipeline to be loaded on startup of the transformer rather than being delayed until it is first required.


log-flags

Type: Integer
Default: 0
Acceptable Values:

NameValueDesc
none0No extra logging
update1Log receiving updates
nodata2Log receiving nodatas
status16Log receiving status
filter4Log receiving filters
timer8Log timer interactions
all-1All available extra logging

Flags for additional logging




Generated on Wed Jul 31 2024 18:00:22 for Transformer Pipeline Module API Reference