StreamLink is an API that allows an application to exchange real-time financial data and trade messages with Caplin Liberator servers via the Web or other TCP/IP network.
It provides the following capabilities:
- Record Subscriptions (including type2 and type 3 data).
- Container subscriptions.
- Directory subscriptions.
- Permission subscriptions.
- Chat subscriptions.
- News headline and news story subscriptions.
- Connection status notification.
- Reconnection and failover.
- Publishing data to subjects.
- Creating and deleting objects on the Liberator.
- Throttling of individual subjects.
- Throttling of the entire session.
It is recommended that you read the Caplin StreamLink Overview to gain understanding of:
- What StreamLink is and how it can be used.
- Fundamental StreamLink concepts & features.
- How StreamLink can integrate with your own client application software to provide a streaming data display and support online trading of financial instruments.
Subscribing to data and receiving updatesTo subscribe to data and receive updates to the data you need to:
- implement (code) some interfaces from the API User Layer,
- call various methods from the API User Layer to connect to a Liberator and set up the subscription.
The API operates asynchronously. This means that when the client application code
issues a subscription request or a command to StreamLink, the response
is not returned immediately through the method used to issue the request
or command. Instead, you must set up a listener object (
You then supply this listener to StreamLink. StreamLink
calls the appropriate callback method(s) on the listener object
to communicate data and command responses back to the client code.
Much of the StreamLink API is defined as interfaces. You must implement some of the interfaces in order use StreamLink. These implementations effectively integrate StreamLink with your client application. There are also protocols with implementations that are built into the API, so in these cases you do not need to write your own.
Note:The description of each interface states if you must implement it before use.
As a minimum you need to implement the
StreamLink calls your SubscriptionListener implementation to deal with events concerning subscriptions to data.
You should also implement the
ConnectionListener interface if you want to
provide users of your application with information about the state of the connection.