Ejemplo n.º 1
0
 public CreyRestClient(
     HttpClient httpClient,
     IConfiguration configuration,
     SessionInfoStore sessionInfoStore)
 {
     configuration_    = configuration;
     sessionInfoStore_ = sessionInfoStore;
     httpClient_       = httpClient;
 }
Ejemplo n.º 2
0
        public CreyMessageBroker(string channel, IServiceProvider services, ChannelType channelType)
        {
            var configuration = services.GetRequiredService <IConfiguration>();
            var retryPolicy   = new RetryExponential(TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(30), 10);

            var connectionString = configuration.GetServiceBusConnectionString();

            var channelName = configuration.GetChannelName(channel);

            _senderClient = channelType switch
            {
                ChannelType.PublishSubscribe => new TopicClient(connectionString, channelName, retryPolicy),
                ChannelType.PointToPoint => new QueueClient(connectionString, channelName, ReceiveMode.PeekLock, retryPolicy),
                _ => throw new Exception($"Unkown channel type {channelType}")
            };

            _sessionInfo = services.GetRequiredService <SessionInfoStore>();
            _version     = configuration.GetValue <string>(ChangeSetIdentifier);
        }