/// <summary> /// Get the PsAzureAdvisorConfigurationData for the current subscription. /// </summary> /// <returns>A PsAzureAdvisorConfigurationData</returns> private PsAzureAdvisorConfigurationData GetConfigurationDataForCurrentSubscription() { PsAzureAdvisorConfigurationData returnConfigurationData = null; ConfigurationResource configResourceClient = new ConfigurationResource(); List <PsAzureAdvisorConfigurationData> psConfigDataList = configResourceClient.GetAllConfiguratioFromClient(this.ResourceAdvisorClient); foreach (PsAzureAdvisorConfigurationData entry in psConfigDataList) { if (entry.Name.Equals(this.ResourceAdvisorClient.SubscriptionId)) { returnConfigurationData = entry; } } return(returnConfigurationData); }
/// <summary> /// Sets the configuration of the current subscription with the given user configuration. /// </summary> /// <param name="configData">Configuration Properties</param> /// <returns>List of PsAzureAdvisorConfigurationData</returns> internal List <PsAzureAdvisorConfigurationData> CreateConfigurationBySubscription(ConfigData configData) { List <PsAzureAdvisorConfigurationData> results = new List <PsAzureAdvisorConfigurationData>(); ConfigurationResource configResourceClient = new ConfigurationResource(); AzureOperationResponse <ARMErrorResponseBody> response = null; List <PsAzureAdvisorConfigurationData> psConfigDataList = null; response = this.ResourceAdvisorClient.Configurations.CreateInSubscriptionWithHttpMessagesAsync(configData).Result; psConfigDataList = configResourceClient.GetAllConfiguratioFromClient(this.ResourceAdvisorClient); foreach (PsAzureAdvisorConfigurationData entry in psConfigDataList) { if (entry.Name.Equals(this.ResourceAdvisorClient.SubscriptionId)) { results.Add(entry); } } return(results); }
/// <summary> /// Executes the cmdlet. /// </summary> public override void ExecuteCmdlet() { ConfigurationResource configResourceClient = new ConfigurationResource(); IEnumerable <ConfigData> responseData = null; List <PsAzureAdvisorConfigurationData> returnPsConfigData = new List <PsAzureAdvisorConfigurationData>(); if (string.IsNullOrEmpty(this.ResourceGroupName)) { returnPsConfigData = configResourceClient.GetAllConfiguratioFromClient(this.ResourceAdvisorClient); } else { responseData = this.ResourceAdvisorClient.Configurations.ListByResourceGroupWithHttpMessagesAsync(this.ResourceGroupName).Result.Body; // Parse the response data from the API to PS object foreach (ConfigData configData in responseData) { returnPsConfigData.Add(PsAzureAdvisorConfigurationData.GetFromConfigurationData(configData)); } } this.WriteObject(returnPsConfigData, true); }