public RabbitMqWrapper( IDateTimeProvider dateTimeProvider, ILogger logger, IConfigurationManager configurationManager, IRabbitMqConnectionManager connectionManager, IServiceMetrics serviceMetrics) { Logger = logger; _dateTimeProvider = dateTimeProvider; _serviceMetrics = serviceMetrics; QueueName = ServiceInfo.QueueName; // AutoAck is the opposite of AcknowledgeAfterProcessing // AcknowledgeAfterProcessing will ack the message after it's been processed, // while AutoAck (AcknowledgeAfterProcessing=False) will ack the message after it's // been pulled from the queue. _autoAck = !configurationManager.Get <bool>("AcknowledgeAfterProcessing", true); _durable = configurationManager.Get <bool>("QueueIsDurable", true); try { _amazonKinesisStreamName = configurationManager.Get <string>("MessageKinesisStream"); } catch { _amazonKinesisStreamName = null; } try { _dataPumpLambdaName = configurationManager.Get <string>("DataPumpLambdaName"); } catch { _dataPumpLambdaName = null; } if (!string.IsNullOrEmpty(_amazonKinesisStreamName)) { _amazonFirehoseProducer = new AmazonFirehoseProducer(logger, configurationManager); } if (!string.IsNullOrEmpty(_dataPumpLambdaName)) { _lambdaDataPump = new LambdaDataPump.LambdaDataPump(logger, _dataPumpLambdaName); } _maximumConcurrency = configurationManager.Get <ushort>("MaximumConcurrency", 0); _channelCache = new ChannelCache(connectionManager, Logger, QueueConstants.ExchangeName, ExchangeType.Topic, true, () => _serviceMetrics.RecordNewMainChannel()); }
public MongoStore( ILogger logger, IConfigurationManager configurationManager, IMongoClient mongoClient, IContainerFacade containerFacade) { var databaseUri = configurationManager.Get <string>("MongoDatabaseUri"); _databaseName = configurationManager.Get <string>("MongoDatabaseName"); try { _amazonKinesisStreamName = configurationManager.Get <string>("RepositoryKinesisStream"); } catch { _amazonKinesisStreamName = null; } try { _dataPumpLambdaName = configurationManager.Get <string>("DataPumpLambdaName"); } catch { _dataPumpLambdaName = null; } _client = mongoClient; _containerFacade = containerFacade; _client.Create(databaseUri); Logger = logger; if (!string.IsNullOrEmpty(_amazonKinesisStreamName)) { _amazonFirehoseProducer = new AmazonFirehoseProducer(logger, configurationManager); } if (!string.IsNullOrEmpty(_dataPumpLambdaName)) { _lambdaDataPump = new LambdaDataPump(logger, _dataPumpLambdaName); } }
public DynamoStore( ILogger logger, IConfigurationManager configurationManager, IContainerFacade containerFacade, IDynamoClient dynamoClient ) { _containerFacade = containerFacade; Logger = logger; //_redisConn = ConnectionMultiplexer.Connect(configurationManager.AppSettings["RedisConnectionString"]); _context = dynamoClient.GetDatabase(); try { _amazonKinesisStreamName = configurationManager.Get <string>("RepositoryKinesisStream"); } catch { _amazonKinesisStreamName = null; } try { _dataPumpLambdaName = configurationManager.Get <string>("DataPumpLambdaName"); } catch { _dataPumpLambdaName = null; } if (!string.IsNullOrEmpty(_amazonKinesisStreamName)) { _amazonFirehoseProducer = new AmazonFirehoseProducer(logger, configurationManager); } if (!string.IsNullOrEmpty(_dataPumpLambdaName)) { _lambdaDataPump = new LambdaDataPump(logger, _dataPumpLambdaName); } }