Line data Source code
1 : using System;
2 : using Cqrs.Authentication;
3 : using Cqrs.Events;
4 :
5 : namespace Cqrs.WebApi.SignalR.Hubs
6 : {
7 : public interface INotificationHub
8 : {
9 : /// <summary>
10 : /// Send out an event to specific user RSNs
11 : /// </summary>
12 1 : void SendUsersEvent<TSingleSignOnToken>(IEvent<TSingleSignOnToken> eventData, params Guid[] userRsnCollection)
13 : where TSingleSignOnToken : ISingleSignOnToken, new();
14 :
15 : /// <summary>
16 : /// Send out an event to specific user token
17 : /// </summary>
18 1 : void SendUserEvent<TSingleSignOnToken>(IEvent<TSingleSignOnToken> eventData, string userToken)
19 : where TSingleSignOnToken : ISingleSignOnToken, new();
20 :
21 : /// <summary>
22 : /// Send out an event to all users
23 : /// </summary>
24 1 : void SendAllUsersEvent<TSingleSignOnToken>(IEvent<TSingleSignOnToken> eventData)
25 : where TSingleSignOnToken : ISingleSignOnToken, new();
26 :
27 : /// <summary>
28 : /// Send out an event to all users except the specific user token
29 : /// </summary>
30 1 : void SendExceptThisUserEvent<TSingleSignOnToken>(IEvent<TSingleSignOnToken> eventData, string userToken)
31 : where TSingleSignOnToken : ISingleSignOnToken, new();
32 : }
33 : }
|