Ejemplo n.º 1
0
        public void LoadSagas(IEnumerable <Type> sagaTypes)
        {
            foreach (var sagaType in sagaTypes)
            {
                if (_sagaDetails.ContainsKey(sagaType))
                {
                    _logger.LogWarning(
                        "Saga type {SagaType} has already been added, skipping it this time",
                        sagaType.PrettyPrint());
                    continue;
                }

                var sagaDetails = SagaDetails.From(sagaType);
                _sagaDetails[sagaType] = sagaDetails;

                foreach (var aggregateEventType in sagaDetails.AggregateEventTypes)
                {
                    var sagaDetailsList = _sagaDetailsByAggregateEvent.GetOrAdd(
                        aggregateEventType,
                        new List <SagaDetails>());

                    sagaDetailsList.Add(sagaDetails);
                }
            }
        }
Ejemplo n.º 2
0
        public void LoadSagas(IEnumerable <Type> sagaTypes)
        {
            foreach (var sagaType in sagaTypes)
            {
                var sagaDetails = SagaDetails.From(sagaType);

                foreach (var aggregateEventType in sagaDetails.AggregateEventTypes)
                {
                    var sagaDetailsList = _sagaDetailsByAggregateEvent.GetOrAdd(
                        aggregateEventType,
                        new List <SagaDetails>());

                    sagaDetailsList.Add(sagaDetails);
                }
            }
        }