Ejemplo n.º 1
0
        public static IDisposable Create(AppFunc app, IDictionary <string, object> properties)
        {
            if (app == null)
            {
                throw new ArgumentNullException("app");
            }
            if (properties == null)
            {
                throw new ArgumentNullException("properties");
            }

            // Retrieve the instances created in Initialize
            OwinHttpListener wrapper = properties.Get <OwinHttpListener>(typeof(OwinHttpListener).FullName)
                                       ?? new OwinHttpListener();

            System.Net.HttpListener listener = properties.Get <System.Net.HttpListener>(typeof(System.Net.HttpListener).FullName)
                                               ?? new System.Net.HttpListener();

            AddressList addresses = properties.Get <AddressList>(Constants.HostAddressesKey)
                                    ?? new List <IDictionary <string, object> >();

            CapabilitiesDictionary capabilities =
                properties.Get <CapabilitiesDictionary>(Constants.ServerCapabilitiesKey)
                ?? new Dictionary <string, object>();

            var loggerFactory = properties.Get <LoggerFactoryFunc>(Constants.ServerLoggerFactoryKey);

            wrapper.Start(listener, app, addresses, capabilities, loggerFactory);
            return(wrapper);
        }
Ejemplo n.º 2
0
        public static void Initialize(IDictionary <string, object> properties)
        {
            if (properties == null)
            {
                throw new ArgumentNullException("properties");
            }

            properties[Constants.VersionKey] = Constants.OwinVersion;

            CapabilitiesDictionary capabilities =
                properties.Get <CapabilitiesDictionary>(Constants.ServerCapabilitiesKey)
                ?? new Dictionary <string, object>();

            properties[Constants.ServerCapabilitiesKey] = capabilities;

            capabilities[Constants.ServerNameKey] = Constants.ServerName;

            DetectWebSocketSupport(properties);

            // Let users set advanced configurations directly.
            var wrapper = new OwinHttpListener();

            properties[typeof(OwinHttpListener).FullName]        = wrapper;
            properties[typeof(System.Net.HttpListener).FullName] = wrapper.Listener;
        }
Ejemplo n.º 3
0
        public AutoTuneMiddleware(AppFunc next, OwinHttpListener server)
        {
            _next = next;
            _server = server;
            _server.SetRequestProcessingLimits((int)_currentMaxAccepts, _currentMaxRequests);

            _timer = new Timer(TimerFired, null, TimeSpan.FromSeconds(0), TimeSpan.FromSeconds(0.1));
        }
Ejemplo n.º 4
0
 static void Main(string[] args)
 {
     using (var l = new OwinHttpListener())
     {
         l.Start(new HttpListener(), SampleOwinApp.Sample.App, new List<IDictionary<string, object>>
                     {
                         new Dictionary<string, object>
                             {
                                 {"scheme","http"},
                                 {"host","localhost"},
                                 {"port","8888"},
                                 {"path",""}
                             }
                     }, new Dictionary<string, object>());
         Console.ReadLine();
         l.Stop();
     }
 }
Ejemplo n.º 5
0
        public static void Initialize(IDictionary<string, object> properties)
        {
            if (properties == null)
            {
                throw new ArgumentNullException("properties");
            }

            properties[Constants.VersionKey] = Constants.OwinVersion;

            CapabilitiesDictionary capabilities =
                properties.Get<CapabilitiesDictionary>(Constants.ServerCapabilitiesKey)
                    ?? new Dictionary<string, object>();
            properties[Constants.ServerCapabilitiesKey] = capabilities;

            DetectWebSocketSupport(properties);

            // Let users set advanced configurations directly.
            var wrapper = new OwinHttpListener();
            properties[typeof(OwinHttpListener).FullName] = wrapper;
            properties[typeof(System.Net.HttpListener).FullName] = wrapper.Listener;
        }