Example #1
0
        public virtual async Task PublishAsync(IntegrationEvent integrationEvent)
        {
            var eventName = _subsManager.GetEventKey(integrationEvent.GetType());
            var payload   = JsonSerializer.Serialize(integrationEvent, _jsonOptions.JsonSerializerOptions);

            await ProcessEventAsync(eventName, payload).ConfigureAwait(false);
        }
        public void Subscribe <T, TH>()
            where T : IntegrationEvent
            where TH : IIntegrationEventHandler <T>
        {
            var eventName = _subsManager.GetEventKey <T>();

            DoInternalSubscription(eventName);
            _subsManager.AddSubscription <T, TH>();
        }