/// <summary> /// Configures Rebus to use Azure Storage Queues to transport messages as a one-way client (i.e. will not be able to receive any messages) /// </summary> public static void UseAzureStorageQueuesAsOneWayClient(this StandardConfigurer <ITransport> configurer, string storageAccountConnectionStringOrName) { var storageAccount = AzureConfigurationHelper.GetStorageAccount(storageAccountConnectionStringOrName); Register(configurer, null, storageAccount); OneWayClientBackdoor.ConfigureOneWayClient(configurer); }
/// <summary> /// Configures Rebus to use a combination of blob and table storage to store sagas /// </summary> public static void StoreInAzureStorage(this StandardConfigurer <ISagaStorage> configurer, string storageAccountConnectionStringOrName, string tableName = "RebusSagaIndex", string containerName = "RebusSagaStorage") { var storageAccount = AzureConfigurationHelper.GetStorageAccount(storageAccountConnectionStringOrName); StoreInAzureStorage(configurer, storageAccount, tableName, containerName); }
/// <summary> /// Configures Rebus to use a full Azure storage-based setup with storage queues as transport, table storage /// for subscriptions, and a combined table storage- and blob-based saga storage. /// Optionally enables the data bus (using blob storage) and saga snapshots (using blob storage too) /// </summary> public static RebusConfigurer UseAzure(this RebusConfigurer configurer, string storageAccountConnectionStringOrName, string inputQueueAddress) { if (configurer == null) { throw new ArgumentNullException(nameof(configurer)); } if (storageAccountConnectionStringOrName == null) { throw new ArgumentNullException(nameof(storageAccountConnectionStringOrName)); } if (inputQueueAddress == null) { throw new ArgumentNullException(nameof(inputQueueAddress)); } var storageAccount = AzureConfigurationHelper.GetStorageAccount(storageAccountConnectionStringOrName); return(Configure(configurer, storageAccount, inputQueueAddress)); }
/// <summary> /// Configures Rebus to store subscriptions using Azure Table Storage /// </summary> public static void StoreInTableStorage(this StandardConfigurer <ISubscriptionStorage> configurer, string storageAccountConnectionStringOrName, string tableName = "RebusSubscriptions", bool isCentralized = false) { var cloudStorageAccount = AzureConfigurationHelper.GetStorageAccount(storageAccountConnectionStringOrName); Register(configurer, tableName, cloudStorageAccount, isCentralized); }
/// <summary> /// Configures Rebus to use Azure Storage Queues to transport messages /// </summary> public static void UseAzureStorageQueues(this StandardConfigurer <ITransport> configurer, string storageAccountConnectionStringOrName, string inputQueueAddress) { var storageAccount = AzureConfigurationHelper.GetStorageAccount(storageAccountConnectionStringOrName); Register(configurer, inputQueueAddress, storageAccount); }