Skip to content

Commit

Permalink
Refactor config section constant and improve clarity
Browse files Browse the repository at this point in the history
Renamed the constant `ConfigSectionPath` to `DefaultConfigSectionName` in `ConfigurationBuilderExtensions.cs` for better clarity. Updated all relevant methods to use the new constant. Added a `using` directive for `Microsoft.Extensions.DependencyInjection` to enhance dependency injection capabilities.
  • Loading branch information
penyland committed Jan 21, 2025
1 parent a5d37c6 commit c1cb3b0
Showing 1 changed file with 7 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using Azure.Core;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System.Data.Common;
using System.Text.Json.Serialization;
Expand Down Expand Up @@ -83,24 +84,23 @@ configuration section.

public static class ConfigurationBuilderExtensions
{
private const string ConfigSectionPath = "Infinity:Azure:AppConfig";
private const string DefaultConfigSectionName = "Infinity:Azure:AppConfig";

public static IHostApplicationBuilder ConfigureAzureAppConfiguration(this IHostApplicationBuilder builder)
=> builder.ConfigureAzureAppConfiguration(ConfigSectionPath, null, null);
=> builder.ConfigureAzureAppConfiguration(DefaultConfigSectionName, null, null);

public static IHostApplicationBuilder ConfigureAzureAppConfiguration(this IHostApplicationBuilder app, Action<AzureAppConfigSettings>? configure = null, Action<AzureAppConfigurationRefreshOptions>? refreshOptions = null)
=> app.ConfigureAzureAppConfiguration(ConfigSectionPath, configure, refreshOptions);
=> app.ConfigureAzureAppConfiguration(DefaultConfigSectionName, configure, refreshOptions);

public static IHostApplicationBuilder ConfigureAzureAppConfiguration(this IHostApplicationBuilder builder, string configSectionPath = ConfigSectionPath, Action<AzureAppConfigSettings>? configureSettings = null, Action<AzureAppConfigurationRefreshOptions>? refreshOptions = null)
public static IHostApplicationBuilder ConfigureAzureAppConfiguration(this IHostApplicationBuilder builder, string configSectionName = DefaultConfigSectionName, Action<AzureAppConfigSettings>? configureSettings = null, Action<AzureAppConfigurationRefreshOptions>? refreshOptions = null)
{
ArgumentNullException.ThrowIfNull(builder, nameof(builder));

var settings = new AzureAppConfigSettings()
{
ApplicationName = builder.Environment.ApplicationName
};

builder.Configuration.GetSection(configSectionPath).Bind(settings);
builder.Configuration.GetSection(configSectionName).Bind(settings);
configureSettings?.Invoke(settings);

builder.Configuration.AddAzureAppConfiguration(options =>
Expand All @@ -120,7 +120,7 @@ public static IHostApplicationBuilder ConfigureAzureAppConfiguration(this IHostA
{
throw new InvalidOperationException($"""
The 'Endpoint' key in
'{configSectionPath}') isn't a valid URI.
'{configSectionName}') isn't a valid URI.
""");
}
}
Expand Down

0 comments on commit c1cb3b0

Please sign in to comment.