public FileLockChangedNotificator(
            IEventBusWrapper eventBus,
            IClientGroupsManager clientGroupsManager,
            ILoggerFactory loggerFactory)
        {
            this.eventBus            = eventBus;
            this.clientGroupsManager = clientGroupsManager;
            this.logger = loggerFactory.CreateLogger <FileLockChangedNotificator>();

            eventBus.Subscribe <FileLockChangedEvent, FileLockChangedMessage>(message =>
            {
                logger.LogTrace("Event: " + message.FileId);
                clientGroupsManager.SendToGroup(message.FileId, message);
            });
        }
Example #2
0
 public static void Subscribe <TEvent, TMessage>(this IEventBusWrapper @this,
                                                 Action <TMessage> messageHandler) where TEvent : IEvent <TMessage>
 {
     @this.Subscribe(new EventHandlerAdapter <TEvent, TMessage>(messageHandler));
 }