コード例 #1
0
        protected override void Load(ContainerBuilder builder)
        {
            builder.RegisterType <BoundedContextListener>().As <IBoundedContextListener>().SingleInstance();

            var environmentVariables = Environment.GetEnvironmentVariables();

            var kafkaSendTopics = new string[0];

            if (environmentVariables.Contains(KAFKA_BOUNDED_CONTEXT_SEND_TOPICS))
            {
                kafkaSendTopics = ((string)environmentVariables[KAFKA_BOUNDED_CONTEXT_SEND_TOPICS]).Split(';');
            }

            var committedEventStreamSenderConfiguration = new CommittedEventStreamSenderConfiguration(kafkaSendTopics.Select(_ => (Topic)_));

            builder.RegisterInstance(committedEventStreamSenderConfiguration).As <CommittedEventStreamSenderConfiguration>();

            Topic topic = "";

            if (environmentVariables.Contains(KAFKA_BOUNDED_CONTEXT_TOPIC))
            {
                topic = (string)environmentVariables[KAFKA_BOUNDED_CONTEXT_TOPIC];
            }
            var boundedContextListenerConfiguration = new BoundedContextListenerConfiguration(topic);

            builder.RegisterInstance(boundedContextListenerConfiguration).As <BoundedContextListenerConfiguration>();
        }
コード例 #2
0
 public CommittedEventStreamSender(
     IPublisher publisher,
     ICommittedEventStreamBridge bridge,
     IEventConverter eventConverter,
     ISerializer serializer,
     CommittedEventStreamSenderConfiguration senderConfiguration,
     ILogger logger)
 {
     _publisher           = publisher;
     _eventConverter      = eventConverter;
     _bridge              = bridge;
     _serializer          = serializer;
     _senderConfiguration = senderConfiguration;
     _logger              = logger;
 }