Esempio n. 1
0
        private WebServer(string remoteHostIp, int remotePort, string baseAddress)
        {
            LocalHost  = IPAddress.Loopback.ToString();
            RemoteHost = remoteHostIp;
            RemotePort = remotePort;

            _remoteUriService = new RemoteUriWebService(baseAddress);
            Random r = new Random();

            // if remote port is between 10000 and 32000, select a port in the same range.
            // R Help uses ports in that range.
            int localPortMin = (RemotePort >= 10000 && RemotePort <= 32000)? 10000: 49152;
            int localPortMax = (RemotePort >= 10000 && RemotePort <= 32000) ? 32000 : 65535;

            while (true)
            {
                _listener = new HttpListener();
                LocalPort = r.Next(localPortMin, localPortMax);
                _listener.Prefixes.Add($"http://{LocalHost}:{LocalPort}/");
                try {
                    _listener.Start();
                } catch (HttpListenerException) {
                    _listener.Close();
                    continue;
                }
                break;
            }
        }
Esempio n. 2
0
        private WebServer(string remoteHostIp, int remotePort, string baseAddress)
        {
            LocalHost  = IPAddress.Loopback.ToString();
            RemoteHost = remoteHostIp;
            RemotePort = remotePort;

            _remoteUriService = new RemoteUriWebService(baseAddress);
        }
Esempio n. 3
0
        private WebServer(string remoteHostIp, int remotePort, string baseAddress, string name, ICoreServices services, IConsole console) {
            _name = name.ToUpperInvariant();
            _services = services;
            _console = console;

            LocalHost = IPAddress.Loopback.ToString();
            RemoteHost = remoteHostIp;
            RemotePort = remotePort;

            _remoteUriService = new RemoteUriWebService(baseAddress);
        }
Esempio n. 4
0
        private WebServer(string remoteHostIp, int remotePort, string baseAddress, string name, IActionLog log, IConsole console)
        {
            _name        = name.ToUpperInvariant();
            _baseAddress = baseAddress;
            _log         = log;
            _console     = console;

            LocalHost  = IPAddress.Loopback.ToString();
            RemoteHost = remoteHostIp;
            RemotePort = remotePort;

            _remoteUriService = new RemoteUriWebService(baseAddress, log, console);
        }