forked from Aaronontheweb/InMemoryCQRSReplication
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathITradeEventSubscriptionManager.cs
29 lines (22 loc) · 1.2 KB
/
ITradeEventSubscriptionManager.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// -----------------------------------------------------------------------
// <copyright file="ITradeEventSubscriptionManager.cs" company="Petabridge, LLC">
// Copyright (C) 2015 - 2019 Petabridge, LLC <https://petabridge.com>
// </copyright>
// -----------------------------------------------------------------------
using System.Threading.Tasks;
using Akka.Actor;
namespace Akka.CQRS.Subscriptions
{
/// <summary>
/// Abstraction used to manage subscriptions for <see cref="ITradeEvent"/>s.
/// </summary>
public interface ITradeEventSubscriptionManager
{
Task<TradeSubscribeAck> Subscribe(string tickerSymbol, IActorRef subscriber);
Task<TradeSubscribeAck> Subscribe(string tickerSymbol, TradeEventType @event, IActorRef subscriber);
Task<TradeSubscribeAck> Subscribe(string tickerSymbol, TradeEventType[] events, IActorRef subscriber);
Task<TradeUnsubscribeAck> Unsubscribe(string tickerSymbol, TradeEventType[] events, IActorRef subscriber);
Task<TradeUnsubscribeAck> Unsubscribe(string tickerSymbol, TradeEventType @event, IActorRef subscriber);
Task<TradeUnsubscribeAck> Unsubscribe(string tickerSymbol, IActorRef subscriber);
}
}