Message Flow

The message flow between the adapter and any Flex client is initiated when the client sends a subscribe request indicating the stream name and a column filter (optional).


SubscriptionRequest

Ensure the request has the format:

<subscribe stream="MyStream" myFilterColumn1="MyRegex1" .../>

Ensure the filtered columns are string type. Regular expressions are accepted as column values. For example, as a result of this request:

<subscribe stream="MarketData" Symbol="I.*"/>

the client receives all records on the MarketData stream in which the Symbol begins with the capital letter ā€œIā€.

The records sent back to the clients have the format:

<MyStream ESP_OPS="i" myColumn1="MyValue1" myColumn2="MyValue2" .../>

where ESP_OPS is the record opcode. The valid opcode values are "i" (INSERT), "u" (UPDATE), "d" (DELETE), and "p" (UPSERT). All columns with non-null values are included, regardless of the opcode. Null column values are ignored.


RecordToClient

To unsubscribe from a previously subscribed stream, the client sends a request with the format:

<unsubscribe stream="MyStream"/>

The client can subscribe concurrently to any number of different streams. To change the column filter values, unsubscribe from the stream first, then subscribe with the new filter.

In the event of an Event Stream Processor failover, the SDK API switches to the spare Event Stream Processor instance without message loss.