Skip to content

Commit 3929156

Browse files
committed
more override appbuilder
1 parent 95e6fd3 commit 3929156

File tree

1 file changed

+52
-14
lines changed

1 file changed

+52
-14
lines changed

src/ConsoleAppFramework/ConsoleAppBuilder.cs

Lines changed: 52 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,6 @@ internal ConsoleAppBuilder(string[] args, IHostBuilder hostBuilder, ConsoleAppOp
4141
this.builder = AddConsoleAppFramework(hostBuilder, args, options, (_, __) => { });
4242
}
4343

44-
public ConsoleApp Build()
45-
{
46-
var host = builder.Build();
47-
return new ConsoleApp(host);
48-
}
49-
5044
IHostBuilder AddConsoleAppFramework(IHostBuilder builder, string[] args, ConsoleAppOptions options, Action<HostBuilderContext, ConsoleAppOptions>? configureOptions)
5145
{
5246
return builder
@@ -78,38 +72,82 @@ IHost IHostBuilder.Build()
7872
return builder.Build();
7973
}
8074

81-
public IHostBuilder ConfigureAppConfiguration(Action<HostBuilderContext, IConfigurationBuilder> configureDelegate)
75+
IHostBuilder IHostBuilder.ConfigureAppConfiguration(Action<HostBuilderContext, IConfigurationBuilder> configureDelegate)
8276
{
8377
return builder.ConfigureAppConfiguration(configureDelegate);
8478
}
8579

86-
public IHostBuilder ConfigureContainer<TContainerBuilder>(Action<HostBuilderContext, TContainerBuilder> configureDelegate)
80+
IHostBuilder IHostBuilder.ConfigureContainer<TContainerBuilder>(Action<HostBuilderContext, TContainerBuilder> configureDelegate)
8781
{
8882
return builder.ConfigureContainer(configureDelegate);
8983
}
9084

91-
public IHostBuilder ConfigureHostConfiguration(Action<IConfigurationBuilder> configureDelegate)
85+
IHostBuilder IHostBuilder.ConfigureHostConfiguration(Action<IConfigurationBuilder> configureDelegate)
9286
{
9387
return builder.ConfigureHostConfiguration(configureDelegate);
9488
}
9589

96-
public IHostBuilder ConfigureServices(Action<HostBuilderContext, IServiceCollection> configureDelegate)
90+
IHostBuilder IHostBuilder.ConfigureServices(Action<HostBuilderContext, IServiceCollection> configureDelegate)
9791
{
9892
return builder.ConfigureServices(configureDelegate);
9993
}
10094

101-
public IHostBuilder UseServiceProviderFactory<TContainerBuilder>(IServiceProviderFactory<TContainerBuilder> factory)
102-
where TContainerBuilder : notnull
95+
IHostBuilder IHostBuilder.UseServiceProviderFactory<TContainerBuilder>(IServiceProviderFactory<TContainerBuilder> factory)
10396
{
10497
return builder.UseServiceProviderFactory(factory);
10598
}
10699

107-
public IHostBuilder UseServiceProviderFactory<TContainerBuilder>(Func<HostBuilderContext, IServiceProviderFactory<TContainerBuilder>> factory)
108-
where TContainerBuilder : notnull
100+
IHostBuilder IHostBuilder.UseServiceProviderFactory<TContainerBuilder>(Func<HostBuilderContext, IServiceProviderFactory<TContainerBuilder>> factory)
109101
{
110102
return builder.UseServiceProviderFactory(factory);
111103
}
112104

105+
// override implementations that returns ConsoleAppBuilder
106+
107+
public ConsoleApp Build()
108+
{
109+
var host = builder.Build();
110+
return new ConsoleApp(host);
111+
}
112+
113+
public ConsoleAppBuilder ConfigureAppConfiguration(Action<HostBuilderContext, IConfigurationBuilder> configureDelegate)
114+
{
115+
builder.ConfigureAppConfiguration(configureDelegate);
116+
return this;
117+
}
118+
119+
public ConsoleAppBuilder ConfigureContainer<TContainerBuilder>(Action<HostBuilderContext, TContainerBuilder> configureDelegate)
120+
{
121+
builder.ConfigureContainer(configureDelegate);
122+
return this;
123+
}
124+
125+
public ConsoleAppBuilder ConfigureHostConfiguration(Action<IConfigurationBuilder> configureDelegate)
126+
{
127+
builder.ConfigureHostConfiguration(configureDelegate);
128+
return this;
129+
}
130+
131+
public ConsoleAppBuilder ConfigureServices(Action<HostBuilderContext, IServiceCollection> configureDelegate)
132+
{
133+
builder.ConfigureServices(configureDelegate);
134+
return this;
135+
}
136+
137+
public ConsoleAppBuilder UseServiceProviderFactory<TContainerBuilder>(IServiceProviderFactory<TContainerBuilder> factory)
138+
where TContainerBuilder : notnull
139+
{
140+
builder.UseServiceProviderFactory(factory);
141+
return this;
142+
}
143+
144+
public ConsoleAppBuilder UseServiceProviderFactory<TContainerBuilder>(Func<HostBuilderContext, IServiceProviderFactory<TContainerBuilder>> factory)
145+
where TContainerBuilder : notnull
146+
{
147+
builder.UseServiceProviderFactory(factory);
148+
return this;
149+
}
150+
113151
// Override Configure methods(Microsoft.Extensions.Hosting.HostingHostBuilderExtensions) tor return ConsoleAppBuilder
114152

115153
public ConsoleAppBuilder ConfigureLogging(Action<ILoggingBuilder> configureLogging)

0 commit comments

Comments
 (0)