Beispiel #1
0
        public StorageCheckpointClient(BlobContainerClient containerClient, StorageCheckpointOptions options, ITelemetryLogger log)
        {
            EnsureArg.IsNotNull(containerClient);
            EnsureArg.IsNotNull(options);
            BlobPrefix = options.BlobPrefix;

            _lastCheckpointMaxCount = int.Parse(options.CheckpointBatchCount);
            _checkpoints            = new ConcurrentDictionary <string, Checkpoint>();
            _lastCheckpointTracker  = new ConcurrentDictionary <string, int>();
            _storageClient          = containerClient;
            _log = log;
        }
Beispiel #2
0
        public StorageCheckpointClient(BlobContainerClient containerClient, StorageCheckpointOptions storageCheckpointOptions, EventHubClientOptions eventHubClientOptions, ITelemetryLogger logger)
        {
            _storageClient = EnsureArg.IsNotNull(containerClient, nameof(containerClient));
            EnsureArg.IsNotNull(storageCheckpointOptions, nameof(storageCheckpointOptions));
            EnsureArg.IsNotNull(eventHubClientOptions, nameof(eventHubClientOptions));
            _logger = EnsureArg.IsNotNull(logger, nameof(logger));

            (string eventHubNamespaceFQDN, string eventHubName) = GetEventHubProperties(eventHubClientOptions);
            EnsureArg.IsNotNullOrWhiteSpace(eventHubNamespaceFQDN, nameof(eventHubNamespaceFQDN));
            EnsureArg.IsNotNullOrWhiteSpace(eventHubName, nameof(eventHubName));

            // Blob path for checkpoints includes the event hub name to scope the checkpoints per source event hub.
            _blobCheckpointPrefix = $"{storageCheckpointOptions.BlobPrefix}/checkpoint/";
            _blobPath             = $"{_blobCheckpointPrefix}{eventHubNamespaceFQDN}/{eventHubName}/";
        }
Beispiel #3
0
        public StorageCheckpointClient(StorageCheckpointOptions options, ITelemetryLogger log)
        {
            EnsureArg.IsNotNull(options);
            EnsureArg.IsNotNullOrWhiteSpace(options.BlobPrefix);
            EnsureArg.IsNotNullOrWhiteSpace(options.BlobStorageConnectionString);
            EnsureArg.IsNotNullOrWhiteSpace(options.BlobContainerName);
            EnsureArg.IsNotNullOrWhiteSpace(options.CheckpointBatchCount);

            BlobPrefix = options.BlobPrefix;

            _lastCheckpointMaxCount = int.Parse(options.CheckpointBatchCount);
            _checkpoints            = new ConcurrentDictionary <string, Checkpoint>();
            _lastCheckpointTracker  = new ConcurrentDictionary <string, int>();
            _storageClient          = new BlobContainerClient(options.BlobStorageConnectionString, options.BlobContainerName);
            _log = log;
        }
        public StorageCheckpointClient(BlobContainerClient containerClient, StorageCheckpointOptions storageCheckpointOptions, EventHubClientOptions eventHubClientOptions, ITelemetryLogger log)
        {
            EnsureArg.IsNotNull(containerClient, nameof(containerClient));
            EnsureArg.IsNotNull(storageCheckpointOptions, nameof(storageCheckpointOptions));
            EnsureArg.IsNotNull(eventHubClientOptions, nameof(eventHubClientOptions));

            (string eventHubNamespaceFQDN, string eventHubName) = GetEventHubProperties(eventHubClientOptions);
            EnsureArg.IsNotNullOrWhiteSpace(eventHubNamespaceFQDN, nameof(eventHubNamespaceFQDN));
            EnsureArg.IsNotNullOrWhiteSpace(eventHubName, nameof(eventHubName));

            // Blob path for checkpoints includes the event hub name to scope the checkpoints per source event hub.
            _blobCheckpointPrefix = $"{storageCheckpointOptions.BlobPrefix}/checkpoint/";
            _blobPath             = $"{_blobCheckpointPrefix}{eventHubNamespaceFQDN}/{eventHubName}/";

            _lastCheckpointMaxCount = int.Parse(storageCheckpointOptions.CheckpointBatchCount);
            _checkpoints            = new ConcurrentDictionary <string, Checkpoint>();
            _lastCheckpointTracker  = new ConcurrentDictionary <string, int>();
            _storageClient          = containerClient;
            _log = log;
        }