SamplesV1/ADFSecurePublish/AdfKeyVaultDeployment/SettingsContextManager.cs (36 lines of code) (raw):

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.ADF.Deployment.AdfKeyVaultDeployment.Models; namespace Microsoft.ADF.Deployment.AdfKeyVaultDeployment { public class SettingsContextManager : ISettingsContextManager { private AppSettings settings; public SettingsContextManager() { } public SettingsContextManager(AppSettings settings) { this.settings = settings; } public SettingsContext GetSettingsContext(string environment) { var environmentSetting = settings.EnvironmentSettings.First(x => x.Name == environment); SettingsContext settingsContext = new SettingsContext { AdfClientId = settings.AdfClientId, KeyVaultCertClientId = settings.KeyVaultCertClientId, KeyVaultCertificateThumbprint = settings.KeyVaultCertThumbprint, ActiveDirectoryTenantId = settings.AzureTenantId, WindowsManagementUri = settings.WindowsManagementUri, KeyVaultName = environmentSetting.KeyVaultName, KeyVaultDnsSuffix = string.IsNullOrEmpty(environmentSetting.KeyVaultDnsSuffix) ? "vault.azure.net:443" : environmentSetting.KeyVaultDnsSuffix, DeploymentConfigName = environmentSetting.DeploymentConfigName }; return settingsContext; } } }