public Consumer(IAmazonKinesis client, IUtilities utilities, IDynamoDB dynamoDb)
        {
            _client    = client;
            _utilities = utilities;
            _dynamoDb  = dynamoDb;

            _isRunning = false;
            _cancellationTokenSource = null;

            _saveProgressToDynamo     = true;
            _currentRecordsProcessing = 0;
        }
Beispiel #2
0
        public KManager(string awsKey, string awsSecret, AmazonKinesisConfig config, string workerId = null)
        {
            if (workerId == null)
            {
                workerId = Environment.MachineName;
            }

            _client = new AmazonKinesisClient(awsKey, awsSecret, config);

            _utilities = new Utilities(_client, workerId);
            _dynamoDb  = new DynamoDB(awsKey, awsSecret, config.RegionEndpoint, _utilities);

            _producer = new Producer(_client, _utilities);
            _consumer = new Consumer(_client, _utilities, _dynamoDb);

            Log.Information("Instantiated KManager");
        }
Beispiel #3
0
        public KManager(IAmazonDynamoDB dynamoClient, IAmazonKinesis kinesisClient, string streamName, string workerId)
        {
            Log.Debug("Entering KManager ctor");
            if (workerId == null)
            {
                workerId = Environment.MachineName;
            }

            _client = kinesisClient;
            Log.Debug("Creating Utitlities");
            _utilities = new Utilities(_client, workerId);
            Log.Debug("Creating Dynamo presistance");
            _dynamoDb = new DynamoDB(dynamoClient, _utilities);

            Log.Debug("Creating Producer");
            _producer = new Producer(_client, _utilities);
            Log.Debug("Creating Consumer");
            _consumer = new Consumer(_client, _utilities, _dynamoDb);


            _utilities.SetStreamName(streamName);

            Log.Information("Instantiated KManager");
        }