public void Configuration(IAppBuilder appBuilder)
        {
            string websiteInstanceId = Environment.GetEnvironmentVariable(CatalogMetricsStorage.WEBSITE_INSTANCE_ID);

            if (String.IsNullOrEmpty(websiteInstanceId))
            {
                Environment.SetEnvironmentVariable(CatalogMetricsStorage.WEBSITE_INSTANCE_ID, "A1B2C3D4");
            }

            IDictionary <string, string> appSettingDictionary = new Dictionary <string, string>();

            appSettingDictionary.Add(MetricsAppSettings.ShouldUseDB, ShouldUseDB.ToString());
            appSettingDictionary.Add(MetricsAppSettings.ShouldUseCatalog, ShouldUseCatalog.ToString());
            appSettingDictionary.Add(MetricsAppSettings.SqlConfigurationKey, ConnectionString);
            appSettingDictionary.Add(MetricsAppSettings.CommandTimeoutKey, CommandTimeout.ToString());
            //appSettingDictionary.Add(MetricsAppSettings.CatalogLocalDirectoryKey, CatalogLocalDirectory);
            appSettingDictionary.Add(MetricsAppSettings.CatalogBaseAddressKey, CatalogIndexUrl);
            appSettingDictionary.Add(MetricsAppSettings.CatalogStorageAccountKey, CatalogStorageAccount);
            appSettingDictionary.Add(MetricsAppSettings.CatalogPathKey, CatalogPath);
            appSettingDictionary.Add(MetricsAppSettings.CatalogPageSizeKey, CatalogPageSize.ToString());
            appSettingDictionary.Add(MetricsAppSettings.CatalogItemPackageStatsCountKey, CatalogItemPackageStatsCount.ToString());

            _packageStatsHandler = new PackageStatsHandler(appSettingDictionary);
            appBuilder.Run(Invoke);
        }
Exemple #2
0
        public void Configuration(IAppBuilder appBuilder)
        {
            try
            {
                var connectionStringSetting = WebConfigurationManager.ConnectionStrings[MetricsAppSettings.SqlConfigurationKey];
                if (connectionStringSetting == null)
                {
                    throw new ArgumentNullException("Connection String '" + MetricsAppSettings.SqlConfigurationKey + "' cannot be found");
                }
                WebConfigurationManager.AppSettings[MetricsAppSettings.SqlConfigurationKey] = connectionStringSetting.ConnectionString;

                var appSettingDictionary = WebConfigurationManager.AppSettings
                                           .Cast <string>()
                                           .Select(s => new { Key = s, Value = WebConfigurationManager.AppSettings[s] })
                                           .ToDictionary(p => p.Key, p => p.Value);
                _packageStatsHandler = new PackageStatsHandler(appSettingDictionary);
                appBuilder.Run(Invoke);
                Trace.TraceInformation("Started the website instance successfully");
            }
            catch (Exception ex)
            {
                Trace.TraceError(ex.ToString());
            }
        }