General statements
FIXEdge SDK allows developer developers to create custom plugins for FIXEdge: Transport Adaptors and Handlers.
...
src_TA - source of sample Transport Adaptor
Requirements
FIXEDge The FIXEdge SDK is available for windows Windows (MS Visual Studio 2010, x64) and linux Linux (RHEL 6, gcc44, x64)
CMake v 2.8 should be used to prepare the solution of sample Handler and sample Transport Adaptor
...
Handler is a lightweight plugin for FIXEdge. It is suited for using in the following scenariosscenario:
- make some modifications on incoming FIX Messages (add|/delete|/modify some tags based on some conditions that is difficult to implement in BL XML or BL JS) and pass it back to BL or TransportAdaptorTransport Adaptor
There are already implemented Handlers - see FIXEdge BL Handlers for more info.
Transport Adaptor is more complicated plugin. It is suited for using use in the following scenarios where adapting FIX Session to any other kind of session is required:
- establish a connection to any non-FIX endpoints (such as SMTP - SMTP TA, IBM MQ, HTTPS, JMS, Kafka, and so on) and provide a data flow between these endpoints and FIX Sessions.
- periodically polling of any FIX or non-FIX endpoints
...
Feature | Handler | Transport Adaptor |
---|---|---|
Load | reloads each time after BL Rules are reloaded loads only if reference to Handler exists in some BL rule | once at FE start |
ClientID | doesn't have a ClientID. Can't be referenced by another Handler or TA. | Can register several ClientIDs |
Incoming messages | Can be addressed from BL Rules using <HandlerAction> tag only message is coming to process method | Messages to each of ClientID can be passed from BL <Send> tag, or from another TA or Handler. Message is coming into the sendToClient method |
Outgoing messages | Can just pass original or transformed message to the BL Can send synchronously to any registered ClientID Can send asynchronously to any registed ClientID | Can be send to BL only via the onMessageFromClient method. onMessageFromClient can't be called from the same thread as sendToClient |
History access | has direct access to any configured on BL History | for Bridge Adaptors only (see FIXEdge Transport Adaptors Developer Guide) for more details |
Configuration | in BL_Config.xml | in FIXEdge.properties |
More For more detailed info on developing custom Handler, see FIXEdge BL Handlers Developer Guide.
More For more detailed info on developing developing custom Transport Adaptor, see FIXEdge Transport Adaptors Developer Guide.