public static void Main(string[] args) { AppDomain.CurrentDomain.UnhandledException += CurrentDomainOnUnhandledException; LogManager.Assign(new SimpleLogManager <ConsoleLogger>()); /* * var cb = new ContainerBuilder(); * cb.RegisterType<HttpParser>().AsImplementedInterfaces().SingleInstance(); * cb.RegisterType<ResponseEncoder>().AsSelf().SingleInstance(); * cb.RegisterType<HeaderDecoder>().AsSelf().SingleInstance(); * cb.RegisterType<MessageHandler>().AsSelf().SingleInstance(); * cb.RegisterType<FileHandler>().AsSelf().SingleInstance(); * var serviceLocator = new AutofacServiceLocator(cb.Build()); */ var authService = new DummyAuthenticatorService(); var authHandler = new AuthenticationHandler(new DigestAuthenticator(new SingleRealmRepository("*****@*****.**"), authService), authService); var factory = new DelegatePipelineFactory(); factory.AddDownstreamHandler(authHandler); factory.AddDownstreamHandler(() => new ResponseEncoder()); factory.AddUpstreamHandler(() => new HeaderDecoder(new HttpParser())); factory.AddUpstreamHandler(new HttpErrorHandler(new SimpleErrorFormatter())); factory.AddUpstreamHandler(authHandler); factory.AddUpstreamHandler(() => new BodyDecoder(new CompositeBodyDecoder(), 65535, 6000000)); //factory.AddUpstreamHandler(() => new FileHandler()); factory.AddUpstreamHandler(() => new MessageHandler()); //factory.AddUpstreamHandler(new PipelineFailureHandler()); HttpListener listener = new HttpListener(factory); listener.Start(new IPEndPoint(IPAddress.Any, 8080)); Console.ReadLine(); }
public static void Main(string[] args) { AppDomain.CurrentDomain.UnhandledException += CurrentDomainOnUnhandledException; LogManager.Assign(new SimpleLogManager<ConsoleLogger>()); /* var cb = new ContainerBuilder(); cb.RegisterType<HttpParser>().AsImplementedInterfaces().SingleInstance(); cb.RegisterType<ResponseEncoder>().AsSelf().SingleInstance(); cb.RegisterType<HeaderDecoder>().AsSelf().SingleInstance(); cb.RegisterType<MessageHandler>().AsSelf().SingleInstance(); cb.RegisterType<FileHandler>().AsSelf().SingleInstance(); var serviceLocator = new AutofacServiceLocator(cb.Build()); */ var authService = new DummyAuthenticatorService(); var authHandler = new AuthenticationHandler(new DigestAuthenticator(new SingleRealmRepository("*****@*****.**"), authService), authService); var factory = new DelegatePipelineFactory(); factory.AddDownstreamHandler(authHandler); factory.AddDownstreamHandler(() => new ResponseEncoder()); factory.AddUpstreamHandler(() => new HeaderDecoder(new HttpParser())); factory.AddUpstreamHandler(new HttpErrorHandler(new SimpleErrorFormatter())); factory.AddUpstreamHandler(authHandler); factory.AddUpstreamHandler(() => new BodyDecoder(new CompositeBodyDecoder(), 65535, 6000000)); //factory.AddUpstreamHandler(() => new FileHandler()); factory.AddUpstreamHandler(() => new MessageHandler()); //factory.AddUpstreamHandler(new PipelineFailureHandler()); HttpListener listener = new HttpListener(factory); listener.Start(new IPEndPoint(IPAddress.Any, 8080)); Console.ReadLine(); }