Creates a record subscription using a supplied set of subscription parameters.
Declaration Syntax
C# | Visual Basic | Visual C++ |
IRecordSubscription CreateRecordSubscription( IRecordSubscriptionListener listener, string subject, IRecordSubscriptionParameters parameters )
Function CreateRecordSubscription ( _ listener As IRecordSubscriptionListener, _ subject As String, _ parameters As IRecordSubscriptionParameters _ ) As IRecordSubscription
IRecordSubscription^ CreateRecordSubscription( IRecordSubscriptionListener^ listener, String^ subject, IRecordSubscriptionParameters^ parameters )
Parameters
- listener (IRecordSubscriptionListener)
- The listener that will receive events relating to the subscribed record.
- subject (String)
- A single subject name for the record (for example "/FX/EURUSD").
- parameters (IRecordSubscriptionParameters)
- The subscription parameters for the record. To obtain an IRecordSubscriptionParameters object, first obtain the IParametersFactory associated with the IStreamLinkProvider. Then call a method such as CreateRecordSubscriptionParameters(array<String>[]()[]) on the IParametersFactory; this will return a valid IRecordSubscriptionParameters object. Choose a method that will supply the required combination of window range and update filter.
Return Value
A new record subscription.
Examples
CopyC#
using System; using System.Collections.Generic; using System.Text; using Caplin.StreamLink; using Caplin.StreamLink.Authentication; using Caplin.StreamLink.Subscription.Record; namespace StreamLinkExamples.Record { /// <summary> /// Various examples of how to create an IRecordSubscription using the /// IStreamLinkProvider interface. /// </summary> public class CreateRecordSubscriptionWithFields { /// <summary> /// Creates a simple record subscription with no parameters. /// </summary> public static void CreateRecordSubscriptionWithFieldsExample() { // Set up StreamLink and login credentials StreamLink myStreamLink = new StreamLink(); myStreamLink.CredentialsProvider = new PasswordCredentialsProvider("admin", "admin"); // Set up listener and created the subscription for /DEMO/MSFT IRecordSubscriptionListener listener = new ExampleRecordSubscriptionListener(); string[] fields = new string[] { "Bid", "Ask" }; IRecordSubscriptionParameters parameters = myStreamLink.StreamLinkProvider.ParametersFactory.CreateRecordSubscriptionParameters(fields); // Create subscription, specifying fields Bid and Ask IRecordSubscription subscription = myStreamLink.StreamLinkProvider.CreateRecordSubscription(listener, "/DEMO/MSFT", parameters); // Subscribe the subscription, this will be queued until we // login to the Liberator subscription.Subscribe(); // Finally, connect to the Liberator myStreamLink.StreamLinkProvider.Connect(); } } }
Examples
CopyC#
using System; using System.Collections.Generic; using System.Text; using Caplin.StreamLink; using Caplin.StreamLink.Authentication; using Caplin.StreamLink.Subscription.Record; namespace StreamLinkExamples.Record { /// <summary> /// Various examples of how to create an IRecordSubscription using the /// IStreamLinkProvider interface. /// </summary> public class CreateRecordSubscriptionWithFiltering { /// <summary> /// Subscribe to a record and all fields (specify no fields) and filter on a field. /// </summary> public static void CreateRecordSubscriptionWithFilteringExample() { StreamLink myStreamLink = new StreamLink(); myStreamLink.CredentialsProvider = new PasswordCredentialsProvider("admin", "admin"); IRecordSubscriptionListener subscriptionListener = new ExampleRecordSubscriptionListener(); // All fields and filter string filter = "Bid>10"; IRecordSubscriptionParameters recordParameters = myStreamLink.StreamLinkProvider.ParametersFactory.CreateRecordSubscriptionParameters(filter); IRecordSubscription subscription = myStreamLink.StreamLinkProvider.CreateRecordSubscription(subscriptionListener, "/DEMO/MSFT"); subscription.Subscribe(); myStreamLink.StreamLinkProvider.Connect(); } } }
Examples
CopyC#
using System; using System.Collections.Generic; using System.Text; using Caplin.StreamLink; using Caplin.StreamLink.Authentication; using Caplin.StreamLink.Subscription.Record; namespace StreamLinkExamples.Record { /// <summary> /// Various examples of how to create an IRecordSubscription using the /// IStreamLinkProvider interface. /// </summary> public class CreateRecordSubscriptionWithFilteringAndFields { /// <summary> /// Subscribe to a record and specify fields and filter on one of those fields. /// </summary> public static void CreateRecordSubscriptionWithFilteringAndFieldsExample() { StreamLink myStreamLink = new StreamLink(); myStreamLink.CredentialsProvider = new PasswordCredentialsProvider("admin", "admin"); IRecordSubscriptionListener subscriptionListener = new ExampleRecordSubscriptionListener(); // Specify fields and filter string[] fields = new string[] { "Bid", "Ask" }; string filter = "Bid>10"; IRecordSubscriptionParameters recordParameters = myStreamLink.StreamLinkProvider.ParametersFactory.CreateRecordSubscriptionParameters(fields, filter); IRecordSubscription subscription = myStreamLink.StreamLinkProvider.CreateRecordSubscription(subscriptionListener, "/DEMO/MSFT"); subscription.Subscribe(); myStreamLink.StreamLinkProvider.Connect(); } } }