/// <summary>
        /// Adds an AWS Elastic Beanstalk IIS Env configuration source to <paramref name="builder"/>.
        /// </summary>
        /// <param name="builder">The <see cref="IConfigurationBuilder"/> to add to.</param>
        /// <param name="provider">The <see cref="IFileProvider"/> to use to access the underlying "container configuration" file.</param>
        /// <param name="optional">Whether the underlying "container configuration" file is optional.</param>
        /// <param name="reloadOnChange">Whether the configuration should be reloaded if the underlying "container configuration" file changes.</param>
        /// <returns>The <see cref="IConfigurationBuilder"/>.</returns>
        public static IConfigurationBuilder AddAwsElasticBeanstalkIisEnvConfiguration(this IConfigurationBuilder builder, IFileProvider provider, bool optional, bool reloadOnChange)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }

            return(builder.AddAwsElasticBeanstalkIisEnvConfiguration(s =>
            {
                s.FileProvider = provider;
                s.Path = JsonFilePath;
                s.Optional = optional;
                s.ReloadOnChange = reloadOnChange;
                s.ResolveFileProvider();
            }));
        }