Inheritance: IDisposable
Ejemplo n.º 1
0
        public HelpServer()
        {
            Manager = new HelpManager();

            _server = new HttpServer();
            _server.RequestReceived += _server_RequestReceived;
            _server.UnhandledException += _server_UnhandledException;
            _server.Start();
        }
Ejemplo n.º 2
0
 private WebServer()
 {
     try
     {
         HttpServer = new HttpServer { EndPoint = new IPEndPoint(IPAddress.Any, DefaultPort) };
     }
     catch (Exception ex)
     {
         SystemHelper.DisplayMessage(ex.ToString());
     }
 }
Ejemplo n.º 3
0
        public HttpTimeoutManager(HttpServer server)
        {
            if (server == null)
                throw new ArgumentNullException(nameof(server));

            ReadQueue = new TimeoutQueue(server.ReadTimeout);
            WriteQueue = new TimeoutQueue(server.WriteTimeout);

            _thread = new Thread(ThreadProc);
            _thread.Start();
        }
Ejemplo n.º 4
0
		public PreviewHttpServer(string courseDir, string htmlDir, int port)
		{
			server = new HttpServer
			{
				EndPoint = new IPEndPoint(IPAddress.Loopback, port),
			};
			this.courseDir = courseDir;
			this.htmlDir = htmlDir;
			this.port = port;
			CopyStaticToHtmlDir();
		}
Ejemplo n.º 5
0
        public void Dispose()
        {
            if (!_disposed)
            {
                if (_server != null)
                {
                    _server.Dispose();
                    _server = null;
                }

                _disposed = true;
            }
        }
Ejemplo n.º 6
0
 public void startListening(String cmd, String[] wpad_exclude)
 {
     NHttp.HttpServer server = new NHttp.HttpServer();
     this.cmd                = cmd;
     this.wpad_exclude       = wpad_exclude;
     server.EndPoint         = new IPEndPoint(IPAddress.Loopback, 80);
     server.RequestReceived += recvRequest;
     server.Start();
     Console.WriteLine("Listening...");
     while (true)
     {
         Thread.Sleep(5000);
     }
 }
Ejemplo n.º 7
0
        public HttpClient(HttpServer server, TcpClient client)
        {
            if (server == null)
                throw new ArgumentNullException("server");
            if (client == null)
                throw new ArgumentNullException("client");

            Server = server;
            TcpClient = client;

            ReadBuffer = new HttpReadBuffer(server.ReadBufferSize);
            _writeBuffer = new byte[server.WriteBufferSize];

            _stream = client.GetStream();
        }
Ejemplo n.º 8
0
        public LightweightHttpListener(int port, Action <HttpRequest> requestHandler)
        {
            server = new NHttp.HttpServer();
            server.RequestReceived += (s, e) =>
            {
                using (var writer = new StreamWriter(e.Response.OutputStream))
                {
                    new RequestWrapper(e.Request).HandleRequest(requestHandler);

                    writer.Write(HttpStatusCode.OK.ToString());
                }
            };

            server.EndPoint = new IPEndPoint(IPAddress.Loopback, port);
        }
Ejemplo n.º 9
0
        public void StartHttpServer()
        {
            int port = WSRConfig.GetInstance().loopback;

              // 192.168.0.x
              http = new HttpServer();
              http.EndPoint = new IPEndPoint(GetIpAddress(), port);
              http.RequestReceived += this.http_RequestReceived;
              http.Start();
              WSRConfig.GetInstance().logInfo("INIT", "Starting Server: http://" + http.EndPoint + "/");

              // Localhost
              httpLocal = new HttpServer();
              httpLocal.EndPoint = new IPEndPoint(IPAddress.Loopback, port);
              httpLocal.RequestReceived += this.http_RequestReceived;
              httpLocal.Start();
              WSRConfig.GetInstance().logInfo("INIT", "Starting Server: http://" + httpLocal.EndPoint + "/");
        }
Ejemplo n.º 10
0
        public void SetupFakeServer()
        {
            loginSettingsRepository = Resolve<LoginSettingsRepository>();

            server = new HttpServer();
            server.RequestReceived += (s, e) =>
            {
                using (var writer = new StreamWriter(e.Response.OutputStream))
                {
                    var path = e.Request.RawUrl;
                    var response = responses.First(r => r.Path == path);
                    
                    Console.WriteLine("Received request {0}", path);

                    if (response == null)
                    {
                        if (path != FaviconPath)
                            unhandledResponses.Add(path);
                    }
                    else
                    {
                        if (response.IsSatisfied(e))
                        {
                            responses.Remove(response);
                            Console.WriteLine(response.ResponseText);
                            writer.Write(response.ResponseText);
                        }                        
                    }                    
                }
            };

            //Use port zero - this way the OS will assign a free port and we can avoid collisions
            server.EndPoint = new IPEndPoint(IPAddress.Loopback, 0);
            server.Start();

            Console.WriteLine("Starting server at {0}", server.EndPoint);

            //Update login settings so that they match the server URL
            UpdateLoginSettings(server.EndPoint.ToString());
        }
Ejemplo n.º 11
0
 public void startListening(String cmd,String[] wpad_exclude)
 {
     NHttp.HttpServer server = new NHttp.HttpServer();
     this.cmd = cmd;
     this.wpad_exclude = wpad_exclude;
     server.EndPoint = new IPEndPoint(IPAddress.Loopback, 80);
     server.RequestReceived += recvRequest;
     server.Start();
     Console.WriteLine("Listening...");
     while (true)
     {
         Thread.Sleep(5000);
     }
 }
        public Task<string> ListenForIncomingShopTokenFromRedirect(int port)
        {
            var tcs = new TaskCompletionSource<string> ();
            Server = new HttpServer ();

            Server.EndPoint.Port = port;
            Server.EndPoint.Address = IPAddress.Any;
            Server.RequestReceived += (s, e) =>
            {
                using (var writer = new StreamWriter(e.Response.OutputStream)) {
                    writer.Write ("Nom, delicious shop access code!  Test suite will now continue.");
                }

                // when we get our first request, have the TCS become ready
                tcs.SetResult (e.Request.Params ["code"]);
                // server.Dispose();
            };

            Server.Start ();

            return tcs.Task;
        }
        public Server(int port)
        {
            httpServer = new HttpServer();
            httpServer.EndPoint = new IPEndPoint(new IPAddress(new byte[] { 127, 0, 0, 1 }), port);
            httpServer.RequestReceived += (s, e) =>
            {
                string name = "ManagementServer" + e.Request.Path.Replace('/', '.');
                ManifestResourceInfo resourceInfo = Assembly.GetExecutingAssembly().GetManifestResourceInfo(name);
                if (resourceInfo != null)
                {
                    e.Response.ContentType = MimeTypes.GetMimeType(new FileInfo(name));
                    using (Stream resourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name))
                    {
                        resourceStream.CopyTo(e.Response.OutputStream);
                    }
                    return;
                }

                using (var writer = new StreamWriter(e.Response.OutputStream))
                {
                    if (e.Request.Path == "/")
                    {
                        e.Response.Redirect("/index.html");
                    }
                    else if (e.Request.Path == "/localization.js")
                    {
                        name = "ManagementServer.Scripts.lang-" + CultureInfo.CurrentCulture.ThreeLetterISOLanguageName + ".js";
                        resourceInfo = Assembly.GetExecutingAssembly().GetManifestResourceInfo(name);
                        if (resourceInfo != null)
                        {
                            e.Response.ContentType = MimeTypes.GetMimeType(new FileInfo(name));
                            using (Stream resourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name))
                            {
                                resourceStream.CopyTo(e.Response.OutputStream);
                            }
                            return;
                        }
                        else
                        {
                            name = "ManagementServer.Scripts.lang-neutral.js";
                            e.Response.ContentType = MimeTypes.GetMimeType(new FileInfo(name));
                            using (Stream resourceStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name))
                            {
                                resourceStream.CopyTo(e.Response.OutputStream);
                            }
                            return;
                        }
                    }
                    else if (e.Request.Path == "/tree")
                    {
                        e.Response.ContentType = "application/json";
                        Node.SerializeTree(writer);
                    }
                    else if (e.Request.Path == "/mbean")
                    {
                        string id = e.Request.Params["id"];
                        IMBean obj = Node.GetObject(id);
                        if (obj == null)
                        {
                            e.Response.StatusCode = 404;
                            e.Response.StatusDescription = "Object not found on this server";
                        }
                        else
                        {
                            e.Response.ContentType = "application/json";
                            obj.Serialize(id, writer);
                        }
                    }
                    else if (e.Request.Path == "/set-prop")
                    {
                        try
                        {
                            string id = e.Request.Params["id"];
                            string propName = e.Request.Params["propName"];
                            string value = e.Request.Params["val"];

                            IMBean obj = Node.GetObject(id);
                            obj.SetProperty(propName, value);

                            e.Response.ContentType = "application/json";
                            writer.WriteLine("{ \"result\": " + JsonConvert.ToString("ok")
                                + ", \"message\": " + JsonConvert.ToString(ManagementServer.strings.PROP_SET_SUCCESSFULLY) + "}");
                        }
                        catch(Exception ex)
                        {
                            e.Response.ContentType = "application/json";
                            writer.WriteLine("{ \"result\": " + JsonConvert.ToString("error")
                                + ", \"message\": " + JsonConvert.ToString(ex.Message) + "}");
                        }
                    }
                    else if (e.Request.Path == "/invoke")
                    {
                        try
                        {
                            string id = e.Request.Params["object-id"];
                            string methodName = e.Request.Params["method-name"];
                            string methodSignature = e.Request.Params["method-signature"];

                            IMBean obj = Node.GetObject(id);
                            MethodInfo methodInfo = obj.FindMethod(methodName, methodSignature);
                            if (methodInfo == null)
                            {
                                throw new ArgumentException(ManagementServer.strings.ERR_METHOD_NOT_FOUND);
                            }
                            object val = obj.InvokeMethod(methodInfo, e.Request.Params);

                            e.Response.ContentType = "application/json";
                            if (methodInfo.ReturnType == typeof(void))
                            {
                                writer.WriteLine("{ \"result\": " + JsonConvert.ToString("ok")
                                    + ", \"message\": " + JsonConvert.ToString(ManagementServer.strings.VOID_INVOKED_SUCCESSFULLY)
                                    + "}");
                            }
                            else
                            {
                                writer.WriteLine("{ \"result\": " + JsonConvert.ToString("ok")
                                    + ", \"message\": " + JsonConvert.ToString(
                                        string.Format(ManagementServer.strings.METHOD_INVOKED_SUCCESSFULLY, (val == null ? "null" : val.ToString()))
                                    ) + "}");
                            }
                        }
                        catch (Exception ex)
                        {
                            e.Response.ContentType = "application/json";
                            writer.WriteLine("{ \"result\": " + JsonConvert.ToString("error")
                                + ", \"message\": " + JsonConvert.ToString(ex.Message) + "}");
                        }
                    }
                    else
                    {
                        e.Response.StatusCode = 404;
                        e.Response.StatusDescription = "File not found on this server";
                    }
                }
            };
        }
 public void Dispose()
 {
     httpServer.Dispose();
     httpServer = null;
 }
Ejemplo n.º 15
0
        public void StartHttpServer()
        {
            int port = WSRConfig.GetInstance().loopback;

              // 192.168.0.x
              try {
            http = new HttpServer();
            http.EndPoint = new IPEndPoint(GetIpAddress(), port);
            http.Start();
            http.RequestReceived += this.http_RequestReceived;
            WSRConfig.GetInstance().logInfo("INIT", "Starting Server: http://" + http.EndPoint + "/");
              }
              catch (Exception ex) {
            http = null;
            WSRConfig.GetInstance().logInfo("HTTP", "Exception: " + ex.Message);
              }

              // Localhost
              httpLocal = new HttpServer();
              httpLocal.EndPoint = new IPEndPoint(IPAddress.Loopback, port);
              httpLocal.RequestReceived += this.http_RequestReceived;
              httpLocal.Start();
              WSRConfig.GetInstance().logInfo("INIT", "Starting Server: http://" + httpLocal.EndPoint + "/");
        }
Ejemplo n.º 16
0
        public void StartHttpServer()
        {
            int port = ConfigManager.GetInstance().Find("http.local.port", 8888);
              List<IPAddress> addresses;

              string configIps = ConfigManager.GetInstance().Find("http.local.ip", "");
              if (String.IsNullOrWhiteSpace(configIps)) {
             addresses.Add(GetIpAddress());
              }
              else {
            string[] ips = configIps.Split(",");
            try {
              foreach(string ip in ips) {
            addresses.Add(IPAddress.Parse(ip));
              }
            } catch(Exception ex) {
              Log("Exception: " + ex.Message);
            }
              }

              foreach(IPAddress address in addresses) {
            // 192.168.0.x
            if (address != null) {
              try {
            http = new HttpServer();
            http.EndPoint = new IPEndPoint(address, port);
            http.Start();
            http.RequestReceived += this.http_RequestReceived;
            Log("Starting Server: http://" + http.EndPoint + "/");
              } catch (Exception ex) {
            http = null;
            Log("Exception: " + ex.Message);
              }
            }
              }

              // Localhost
              try {
            local = new HttpServer();
            local.EndPoint = new IPEndPoint(IPAddress.Loopback, port);
            local.RequestReceived += this.http_RequestReceived;
            local.Start();
            Log("Starting Server: http://" + local.EndPoint + "/");
              } catch (Exception ex) {
            local = null;
            Log("Exception: " + ex.Message);
              }
        }
Ejemplo n.º 17
0
    public void StartHttpServer() {

      int port = ConfigManager.GetInstance().Find("http.local.port", 8888);
      IPAddress address = GetIpAddress();

      // 192.168.0.x
      if (address != null) {
        try {
          http = new HttpServer();
          http.EndPoint = new IPEndPoint(address, port);
          http.Start();
          http.RequestReceived += this.http_RequestReceived;
          Log("Starting Server: http://" + http.EndPoint + "/");
        } catch (Exception ex) {
          http = null;
          Log("Exception: " + ex.Message);
        }
      }

      // Localhost
      try {
        local = new HttpServer();
        local.EndPoint = new IPEndPoint(IPAddress.Loopback, port);
        local.RequestReceived += this.http_RequestReceived;
        local.Start();
        Log("Starting Server: http://" + local.EndPoint + "/");
      } catch (Exception ex) {
        local = null;
        Log("Exception: " + ex.Message);
      }
    }
Ejemplo n.º 18
0
        public void startListening(String cmd,String[] wpad_exclude,int port)
        {

            NHttp.HttpServer server = new NHttp.HttpServer();
            this.cmd = cmd;
            this.wpad_exclude = wpad_exclude;
<<<<<<< HEAD
            this.srvPort = port;
=======
>>>>>>> a80fdfbf7cbef7ae601d584bf185afc7c211099c
            server.EndPoint = new IPEndPoint(IPAddress.Loopback, port);
            server.RequestReceived += recvRequest;
            server.Start();
            Console.WriteLine("Listening...");
            while (true)
            {
                Thread.Sleep(5000);
            }
        }