public static StatelessAzureQueueWriter Create(IAzureStorageConfig config, string name) { var queue = config.CreateQueueClient().GetQueueReference(name); var container = config.CreateBlobClient().GetContainerReference(name); var v = new StatelessAzureQueueWriter(container, queue, name); v.Init(); return v; }
public IQueueWriter GetWriteQueue(string queueName) { return _writeQueues.GetOrAdd(queueName, name => { var queue = _config.CreateQueueClient().GetQueueReference(name); var container = _config.CreateBlobClient().GetContainerReference(name); var v = new StatelessAzureQueueWriter(_streamer, container, queue, name); v.Init(); return v; }); }
public IQueueWriter GetWriteQueue(string queueName) { return(_writeQueues.GetOrAdd(queueName, name => { var queue = _config.CreateQueueClient().GetQueueReference(name); var container = _config.CreateBlobClient().GetContainerReference(name); var v = new StatelessAzureQueueWriter(container, queue, name); v.Init(); return v; })); }
public void Setup() { _name = Guid.NewGuid().ToString().ToLowerInvariant(); CloudStorageAccount cloudStorageAccount = ConnectionConfig.StorageAccount; _cloudBlobClient = cloudStorageAccount.CreateCloudBlobClient(); var queue = cloudStorageAccount.CreateCloudQueueClient().GetQueueReference(_name); var container = _cloudBlobClient.GetBlobDirectoryReference(_name); _blobContainer = _cloudBlobClient.GetContainerReference(_name); var poisonQueue = new Lazy<CloudQueue>(() => { var queueReference = cloudStorageAccount.CreateCloudQueueClient().GetQueueReference(_name + "-poison"); queueReference.CreateIfNotExist(); return queueReference; }, LazyThreadSafetyMode.ExecutionAndPublication); _statelessReader = new StatelessAzureQueueReader("azure-read-write-message", queue, container, poisonQueue, TimeSpan.FromMinutes(1)); _queueReader = new AzureQueueReader(new[] { _statelessReader }, x => TimeSpan.FromMinutes(x)); _queueWriter = new StatelessAzureQueueWriter(_blobContainer, queue, "azure-read-write-message"); _queueWriter.Init(); }
public void Setup() { _name = Guid.NewGuid().ToString().ToLowerInvariant(); CloudStorageAccount cloudStorageAccount = ConnectionConfig.StorageAccount; _cloudBlobClient = cloudStorageAccount.CreateCloudBlobClient(); var queue = cloudStorageAccount.CreateCloudQueueClient().GetQueueReference(_name); var container = _cloudBlobClient.GetBlobDirectoryReference(_name); _blobContainer = _cloudBlobClient.GetContainerReference(_name); var poisonQueue = new Lazy <CloudQueue>(() => { var queueReference = cloudStorageAccount.CreateCloudQueueClient().GetQueueReference(_name + "-poison"); queueReference.CreateIfNotExist(); return(queueReference); }, LazyThreadSafetyMode.ExecutionAndPublication); _statelessReader = new StatelessAzureQueueReader("azure-read-write-message", queue, container, poisonQueue, TimeSpan.FromMinutes(1)); _queueReader = new AzureQueueReader(new[] { _statelessReader }, x => TimeSpan.FromMinutes(x)); _queueWriter = new StatelessAzureQueueWriter(_blobContainer, queue, "azure-read-write-message"); _queueWriter.Init(); }