示例#1
0
        private async Task HandleEvent(Message message)
        {
            var eventPublishData = EventPublishDataTransformer.Read(message, _serializerProvider, out var skipLocalEvents);

            if (skipLocalEvents && _serviceResolver.Resolve(eventPublishData.Service).Definition.Type == ServiceType.Local)
            {
                return;
            }

            var communicationMessage = new CommunicationMessage(message);
            await _localTransitionRunner.ReactAsync(eventPublishData, communicationMessage);
        }
示例#2
0
        public Task PublishAsync(EventPublishData data, PublishPreferences preferences)
        {
            var message = new Message
            {
                Type = MessageType.Event,
            };

            EventPublishDataTransformer.Write(message, data, preferences, _serializer);

            _messageHub.Schedule(message);

            return(Task.CompletedTask);
        }