SubscriptionRegistry
Subscription tracking. Manages subscribe/unsubscribe, suspend/resume for rules.
Constructors
public SubscriptionRegistry(IStrategyHost host)
subscriptionRegistry = SubscriptionRegistry(host)
Subscription tracking. Manages subscribe/unsubscribe, suspend/resume for rules.
- host
- Strategy host.
Properties
public bool IsRulesSuspended { get; }
value = subscriptionRegistry.IsRulesSuspended
Whether rules are currently suspended.
public IEnumerable<Subscription> Subscriptions { get; }
value = subscriptionRegistry.Subscriptions
All tracked subscriptions.
Methods
public bool CanProcess(Subscription subscription)
result = subscriptionRegistry.CanProcess(subscription)
Check if a subscription is tracked.
public void ResumeRules()
subscriptionRegistry.ResumeRules()
Resume subscription processing. Sends queued subscriptions.
public void Subscribe(Subscription subscription, bool isGlobal)
subscriptionRegistry.Subscribe(subscription, isGlobal)
Subscribe and track. Auto-assigns TransactionId if needed. If rules are suspended, queues for later.
public void SuspendRules()
subscriptionRegistry.SuspendRules()
Suspend subscription processing (for rules).
public Subscription TryGetById(long transactionId)
result = subscriptionRegistry.TryGetById(transactionId)
Try to find subscription by transaction ID.
public void UnSubscribe(Subscription subscription)
subscriptionRegistry.UnSubscribe(subscription)
Unsubscribe. If suspended and not yet sent, just remove from queue.
public void UnSubscribeAll(bool globalAndLocal)
subscriptionRegistry.UnSubscribeAll(globalAndLocal)
Unsubscribe tracked subscriptions and remove them from strategy processing.
- globalAndLocal
- to include global lookup subscriptions.
Events
public event Action<Subscription> SubscriptionRequested
subscriptionRegistry.SubscriptionRequested += handler
Fires when a subscription should be sent to connector.
public event Action<Subscription> UnsubscriptionRequested
subscriptionRegistry.UnsubscriptionRequested += handler
Fires when an unsubscription should be sent to connector.