-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
New extension architecture with filter pipelines (#15)
* added filter infrastructure replaced extension services for Hosting and AspNetCore with filters closes #13 (Replace extension services with filters) * filter improvements: added generic version of all filters closes #4 Added convention based method for AddSimpleInjector and filters for this method. closes #5 Added filters for UseSimpleInjector * fixed inconsistent naming of ModulesHostServices in contexts. * added test for bug #12 * replaced HostFactories with filters fixes #12 +semver: minor
- Loading branch information
Showing
54 changed files
with
789 additions
and
330 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
using System; | ||
using System.Collections.Generic; | ||
|
||
namespace Dbosoft.Hosuto | ||
{ | ||
public interface IFilter<T1> | ||
{ | ||
Action<T1> Invoke(Action<T1> next); | ||
} | ||
|
||
public interface IFilter<T1, T2> | ||
{ | ||
Action<T1, T2> Invoke(Action<T1, T2> next); | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
12 changes: 0 additions & 12 deletions
12
src/Hosuto.Abstractions/Modules/Hosting/IModuleConfigurationConfigurer.cs
This file was deleted.
Oops, something went wrong.
14 changes: 14 additions & 0 deletions
14
src/Hosuto.Abstractions/Modules/Hosting/IModuleConfigurationFilter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
using Microsoft.Extensions.Configuration; | ||
using Microsoft.Extensions.Hosting; | ||
|
||
namespace Dbosoft.Hosuto.Modules.Hosting | ||
{ | ||
public interface IModuleConfigurationFilter : IFilter<IModulesHostBuilderContext, IConfigurationBuilder> | ||
{ | ||
} | ||
|
||
public interface IModuleConfigurationFilter<TModule> : IFilter<IModulesHostBuilderContext<TModule>, IConfigurationBuilder> where TModule : IModule | ||
{ | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
10 changes: 0 additions & 10 deletions
10
src/Hosuto.Abstractions/Modules/Hosting/IModuleServicesConfigurer.cs
This file was deleted.
Oops, something went wrong.
14 changes: 14 additions & 0 deletions
14
src/Hosuto.Abstractions/Modules/Hosting/IModuleServicesFilter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
using System; | ||
using Microsoft.Extensions.DependencyInjection; | ||
using Microsoft.Extensions.Hosting; | ||
|
||
namespace Dbosoft.Hosuto.Modules.Hosting | ||
{ | ||
public interface IModuleServicesFilter : IFilter<IModulesHostBuilderContext, IServiceCollection> | ||
{ | ||
} | ||
|
||
public interface IModuleServicesFilter<TModule> : IFilter<IModulesHostBuilderContext<TModule>, IServiceCollection> where TModule : IModule | ||
{ | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
18 changes: 0 additions & 18 deletions
18
src/Hosuto.Hosting.AspNetCore/Modules/Hosting/DelegateWebHostBuilderConfigurer.cs
This file was deleted.
Oops, something went wrong.
24 changes: 24 additions & 0 deletions
24
src/Hosuto.Hosting.AspNetCore/Modules/Hosting/DelegateWebModuleWebHostBuilderFilter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
using System; | ||
using Microsoft.AspNetCore.Hosting; | ||
|
||
namespace Dbosoft.Hosuto.Modules.Hosting | ||
{ | ||
internal class DelegateWebModuleWebHostBuilderFilter : IWebModuleWebHostBuilderFilter | ||
{ | ||
private readonly Action<WebModule, IWebHostBuilder> _configureDelegate; | ||
|
||
public DelegateWebModuleWebHostBuilderFilter(Action<WebModule, IWebHostBuilder> configureDelegate) | ||
{ | ||
_configureDelegate = configureDelegate; | ||
} | ||
|
||
public Action<WebModule, IWebHostBuilder> Invoke(Action<WebModule, IWebHostBuilder> next) | ||
{ | ||
return (webModule, builder) => | ||
{ | ||
_configureDelegate(webModule, builder); | ||
next(webModule, builder); | ||
}; | ||
} | ||
} | ||
} |
10 changes: 0 additions & 10 deletions
10
src/Hosuto.Hosting.AspNetCore/Modules/Hosting/IConfigureAppStartupConfigurer.cs
This file was deleted.
Oops, something went wrong.
8 changes: 8 additions & 0 deletions
8
src/Hosuto.Hosting.AspNetCore/Modules/Hosting/IWebModuleConfigureFilter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
using System; | ||
using Microsoft.AspNetCore.Builder; | ||
|
||
namespace Dbosoft.Hosuto.Modules.Hosting | ||
{ | ||
public interface IWebModuleConfigureFilter : IFilter<IModuleContext, IApplicationBuilder> | ||
{ } | ||
} |
10 changes: 0 additions & 10 deletions
10
src/Hosuto.Hosting.AspNetCore/Modules/Hosting/IWebModuleWebHostBuilderConfigurer.cs
This file was deleted.
Oops, something went wrong.
9 changes: 9 additions & 0 deletions
9
src/Hosuto.Hosting.AspNetCore/Modules/Hosting/IWebModuleWebHostBuilderFilter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
using Microsoft.AspNetCore.Hosting; | ||
|
||
namespace Dbosoft.Hosuto.Modules.Hosting | ||
{ | ||
public interface IWebModuleWebHostBuilderFilter : IFilter<WebModule, IWebHostBuilder> | ||
{ | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
17 changes: 17 additions & 0 deletions
17
src/Hosuto.Hosting.AspNetCore/Modules/Hosting/WebModuleBootstrapHostFilter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
using System; | ||
|
||
namespace Dbosoft.Hosuto.Modules.Hosting | ||
{ | ||
public class WebModuleBootstrapHostFilter<TModule> : IBootstrapHostFilter<TModule> where TModule : IModule | ||
{ | ||
public Action<BootstrapModuleHostCommand<TModule>> Invoke(Action<BootstrapModuleHostCommand<TModule>> next) | ||
{ | ||
return (command) => | ||
{ | ||
var handler = new WebModuleBootstrapHostHandler<TModule>(); | ||
handler.BootstrapHost(command); | ||
next(command); | ||
}; | ||
} | ||
} | ||
} |
Oops, something went wrong.