Пример #1
0
        private static Dictionary <string, string> GetAzureQueueStreamProviderProperties(string providerName, string connectionString, int numberOfQueues, string deploymentId, int cacheSize, PersistentStreamProviderState startupState, PersistentStreamProviderConfig persistentStreamProviderConfig)
        {
            if (string.IsNullOrWhiteSpace(providerName))
            {
                throw new ArgumentNullException(nameof(providerName));
            }
            if (numberOfQueues < 1)
            {
                throw new ArgumentOutOfRangeException(nameof(numberOfQueues));
            }

            var properties = new Dictionary <string, string>
            {
                { AzureQueueAdapterConstants.DataConnectionStringPropertyName, connectionString },
                { AzureQueueAdapterConstants.NumQueuesPropertyName, numberOfQueues.ToString() },
                { AzureQueueAdapterConstants.DeploymentIdPropertyName, deploymentId },
                { SimpleQueueAdapterCache.CacheSizePropertyName, cacheSize.ToString() },
#pragma warning disable 618
                { AzureQueueStreamProvider.StartupStatePropertyName, startupState.ToString() },
#pragma warning restore 618
            };

            persistentStreamProviderConfig?.WriteProperties(properties);

            return(properties);
        }
        private static void AdjustClusterConfiguration(ClusterConfiguration config)
        {
            var settings = new Dictionary <string, string>();

            // get initial settings from configs
            ProviderSettings.WriteProperties(settings);
            ProviderConfig.WriteProperties(settings);
            BalancerConfig.WriterProperties(settings);
            // register stream provider
            config.Globals.RegisterStreamProvider <MemoryStreamProvider>(StreamProviderName, settings);
            config.Globals.RegisterStorageProvider <MemoryStorage>("PubSubStore");
        }