Ejemplo n.º 1
0
        /// <summary>
        /// See interface.
        /// </summary>
        /// <param name="webAppConfiguration"></param>
        public void Register(IWebAppConfiguration webAppConfiguration)
        {
            _WebAppConfiguration = webAppConfiguration;

            webAppConfiguration.AddCallback(UseExceptionHandler, StandardPipelinePriority.Exception);
            webAppConfiguration.AddCallback(UseAccessFilter, StandardPipelinePriority.Access);
            webAppConfiguration.AddCallback(UseBasicAuthenticationFilter, StandardPipelinePriority.Authentication);
            webAppConfiguration.AddCallback(UseRedirectionFilter, StandardPipelinePriority.Redirection);
            webAppConfiguration.AddCallback(UseCorsHandler, StandardPipelinePriority.Cors);
            webAppConfiguration.AddCallback(UseResponseStreamWrapper, StandardPipelinePriority.ResponseStreamWrapper);

            webAppConfiguration.AddCallback(ConfigureHttpConfiguration, StandardPipelinePriority.WebApiConfiguration);
            webAppConfiguration.AddCallback(UseWebApi, StandardPipelinePriority.WebApi);

            webAppConfiguration.AddCallback(UseBundlerServer, StandardPipelinePriority.BundlerServer);
            webAppConfiguration.AddCallback(UseFileSystemServer, StandardPipelinePriority.FileSystemServer);
            webAppConfiguration.AddCallback(UseImageServer, StandardPipelinePriority.ImageServer);
            webAppConfiguration.AddCallback(UseAudioServer, StandardPipelinePriority.AudioServer);

            webAppConfiguration.AddStreamManipulator(Factory.Resolve <IHtmlManipulator>(), StreamManipulatorPriority.HtmlManipulator);
            webAppConfiguration.AddStreamManipulator(Factory.Resolve <IJavascriptManipulator>(), StreamManipulatorPriority.JavascriptManipulator);

            var htmlManipulatorConfiguration = Factory.ResolveSingleton <IHtmlManipulatorConfiguration>();

            htmlManipulatorConfiguration.AddTextResponseManipulator <IMapPluginHtmlManipulator>();
            htmlManipulatorConfiguration.AddTextResponseManipulator <IBundlerHtmlManipulator>();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// See interface.
        /// </summary>
        /// <param name="webAppConfiguration"></param>
        public void Register(IWebAppConfiguration webAppConfiguration)
        {
            if (_WebAppConfiguration != null)
            {
                throw new InvalidOperationException("You can only call IStandardPipeline.Register() once per object");
            }

            _WebAppConfiguration = webAppConfiguration;

            webAppConfiguration.AddCallback(UseExceptionHandler, StandardPipelinePriority.Exception);
            webAppConfiguration.AddCallback(UseAccessFilter, StandardPipelinePriority.Access);
            webAppConfiguration.AddCallback(UseBasicAuthenticationFilter, StandardPipelinePriority.Authentication);
            webAppConfiguration.AddCallback(UseRedirectionFilter, StandardPipelinePriority.Redirection);
            webAppConfiguration.AddCallback(UseCorsHandler, StandardPipelinePriority.Cors);
            webAppConfiguration.AddCallback(UseResponseStreamWrapper, StandardPipelinePriority.ResponseStreamWrapper);

            webAppConfiguration.AddCallback(ConfigureHttpConfiguration, StandardPipelinePriority.WebApiConfiguration);
            webAppConfiguration.AddCallback(UseWebApi, StandardPipelinePriority.WebApi);

            webAppConfiguration.AddCallback(UseBundlerServer, StandardPipelinePriority.BundlerServer);
            webAppConfiguration.AddCallback(UseFileSystemServer, StandardPipelinePriority.FileSystemServer);
            webAppConfiguration.AddCallback(UseImageServer, StandardPipelinePriority.ImageServer);
            webAppConfiguration.AddCallback(UseAudioServer, StandardPipelinePriority.AudioServer);

            webAppConfiguration.AddStreamManipulator(Factory.Singleton.Resolve <IHtmlManipulator>(), StreamManipulatorPriority.HtmlManipulator);
            webAppConfiguration.AddStreamManipulator(Factory.Singleton.Resolve <IJavascriptManipulator>(), StreamManipulatorPriority.JavascriptManipulator);

            Factory.Singleton.Resolve <IHtmlManipulatorConfiguration>().AddTextResponseManipulator <IBundlerHtmlManipulator>();
        }
Ejemplo n.º 3
0
        /// <summary>
        /// See interface docs.
        /// </summary>
        /// <param name="webAppConfiguration"></param>
        public void ConfigureCustomPipeline(IWebAppConfiguration webAppConfiguration)
        {
            if (_MiddlewareChain != null)
            {
                throw new InvalidOperationException($"You cannot configure an {nameof(ILoopbackHost)} more than once");
            }

            webAppConfiguration.Configure(_AppBuilder);
            _MiddlewareChain = _AppBuilder.Build <AppFunc>();
        }
Ejemplo n.º 4
0
        public OwinWebServer()
        {
            _WebAppConfiguration         = Factory.Singleton.Resolve <IWebAppConfiguration>();
            _AuthenticationConfiguration = Factory.Singleton.ResolveSingleton <IAuthenticationConfiguration>();
            _AccessConfiguration         = Factory.Singleton.ResolveSingleton <IAccessConfiguration>();

            var standardPipeline = Factory.Singleton.Resolve <IStandardPipeline>();

            standardPipeline.Register(_WebAppConfiguration);
        }
Ejemplo n.º 5
0
        public void TestInitialise()
        {
            _Snapshot = Factory.TakeSnapshot();

            _StandardPipeline    = TestUtilities.CreateMockImplementation <IStandardPipeline>();
            _WebAppConfiguration = Factory.Resolve <IWebAppConfiguration>();
            _LoopbackEnvironment = null;
            _Environment         = new MockOwinEnvironment();

            _LoopbackHost = Factory.Resolve <ILoopbackHost>();
        }
        /// <summary>
        /// Use Swagger.
        /// </summary>
        /// <param name="app"></param>
        /// <param name="configuration"></param>
        /// <param name="setupAction"></param>
        /// <returns></returns>
        public static IApplicationBuilder UseSwagger(this IApplicationBuilder app, IWebAppConfiguration configuration)
        {
            var swaggerDefinition = configuration.SwaggerDefinition;

            app.UseSwagger();

            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint($"/swagger/{swaggerDefinition?.Version ?? "1.0"}/swagger.json", swaggerDefinition?.Title ?? string.Empty);
            });

            return(app);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// See interface.
        /// </summary>
        /// <param name="webAppConfiguration"></param>
        public void Register(IWebAppConfiguration webAppConfiguration)
        {
            if (_Registered)
            {
                throw new InvalidOperationException($"You can only call {nameof(Register)}() once per object");
            }
            _Registered = true;

            var pipelines = Factory.ResolveSingleton <IPipelineConfiguration>().CreatePipelines();

            foreach (var pipeline in pipelines)
            {
                pipeline.Register(webAppConfiguration);
            }
        }
Ejemplo n.º 8
0
        public void TestInitialise()
        {
            _Snapshot            = Factory.TakeSnapshot();
            _SharedConfiguration = TestUtilities.CreateMockSingleton <ISharedConfiguration>();
            _Configuration       = new Configuration();
            _SharedConfiguration.Setup(r => r.Get()).Returns(_Configuration);
            _UserManager = TestUtilities.CreateMockSingleton <IUserManager>();

            _RemoteIpAddress           = "127.0.0.1";
            _AccessFilter              = MockAccessFilter.CreateAndRegister();
            _BasicAuthenticationFilter = MockBasicAuthenticationFilter.CreateAndRegister();
            _RedirectionFilter         = MockRedirectionFilter.CreateAndRegister();

            _WebAppConfiguration = Factory.Singleton.Resolve <IWebAppConfiguration>();
            _WebAppConfiguration.AddCallback(UsetTestEnvironmentSetup, StandardPipelinePriority.Access - 1);
            _WebAppConfiguration.AddCallback(ConfigureHttpConfiguration, StandardPipelinePriority.WebApiConfiguration);
            _WebAppConfiguration.AddCallback(UseWebApi, StandardPipelinePriority.WebApi);

            ExtraInitialise();

            _Server = TestServer.Create(app => {
                _WebAppConfiguration.Configure(app);
            });
        }
Ejemplo n.º 9
0
 public OwinWebServer()
 {
     _WebAppConfiguration         = Factory.Resolve <IWebAppConfiguration>();
     _AuthenticationConfiguration = Factory.ResolveSingleton <IAuthenticationConfiguration>();
     _AccessConfiguration         = Factory.ResolveSingleton <IAccessConfiguration>();
 }
Ejemplo n.º 10
0
        /// <summary>
        /// Add Swagger generation in ASP.NET Core dependency injection mechanism.
        /// </summary>
        /// <param name="services"></param>
        /// <param name="configuration"></param>
        /// <param name="configCallback">Optional additionnal configuration for SwaggerGen</param>
        /// <returns></returns>
        public static IServiceCollection AddSwaggerGen(this IServiceCollection services, IWebAppConfiguration configuration, Action <SwaggerGenOptions> configCallback = null)
        {
            var swaggerDefinition = configuration.SwaggerDefinition;

            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc(swaggerDefinition.Version, swaggerDefinition);

                // idea: manage Bearer authentication

                var xmlFile = $"{configuration.AssemblyName}.xml";
                var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
                c.IncludeXmlComments(xmlPath);
                c.CustomSchemaIds(GetClassNameWithoutDtoSuffix);
                if (!(configCallback is null))
                {
                    configCallback(c);
                }
            });

            return(services);
        }
Ejemplo n.º 11
0
 /// <summary>
 /// See interface docs.
 /// </summary>
 /// <param name="webAppConfiguration"></param>
 public void Register(IWebAppConfiguration webAppConfiguration)
 {
     webAppConfiguration.AddCallback(UseWebRequestMiddleware, StandardPipelinePriority.HighestVrsContentMiddlewarePriority + 1000);
 }
Ejemplo n.º 12
0
 public void TestInitialise()
 {
     _Configuration = Factory.Resolve <IWebAppConfiguration>();
     _AppBuilder    = new Mock <IAppBuilder>();
 }
Ejemplo n.º 13
0
 public PoopingApiClient(IWebAppConfiguration webAppConfiguration)
 {
     this.webAppConfiguration = webAppConfiguration;
 }
Ejemplo n.º 14
0
 public NotificationApiClient(IWebAppConfiguration configuration)
 {
     this.configuration = configuration;
 }
Ejemplo n.º 15
0
 public void Register(IWebAppConfiguration webAppConfiguration)
 {
 }
Ejemplo n.º 16
0
 public void Register(IWebAppConfiguration webAppConfiguration)
 {
     ++RegisterCallCount;
 }