Exemplo n.º 1
0
        private void KeepAliveFilterForIdleStatus(IdleStatus status)
        {
            using (AsyncSocketConnector connector = new AsyncSocketConnector())
            {
                KeepAliveFilter filter = new KeepAliveFilter(new ClientFactory(), status, KeepAliveRequestTimeoutHandler.Exception, INTERVAL, TIMEOUT);
                filter.ForwardEvent = true;
                connector.FilterChain.AddLast("keep-alive", filter);

                Boolean gotException = false;
                connector.ExceptionCaught += (s, e) =>
                {
                    // A KeepAliveRequestTimeoutException will be thrown if no keep-alive response is received.
                    Console.WriteLine(e.Exception);
                    gotException = true;
                };

                IConnectFuture future  = connector.Connect(new IPEndPoint(IPAddress.Loopback, port)).Await();
                IoSession      session = future.Session;
                Assert.IsNotNull(session);

                Thread.Sleep((INTERVAL + TIMEOUT + 3) * 1000);

                Assert.IsFalse(gotException, "got an exception on the client");

                session.Close(true);
            }
        }
Exemplo n.º 2
0
        private void KeepAliveFilterForIdleStatus(IdleStatus status)
        {
            using (AsyncSocketConnector connector = new AsyncSocketConnector())
            {
                KeepAliveFilter filter = new KeepAliveFilter(new ClientFactory(), status, KeepAliveRequestTimeoutHandler.Exception, INTERVAL, TIMEOUT);
                filter.ForwardEvent = true;
                connector.FilterChain.AddLast("keep-alive", filter);

                Boolean gotException = false;
                connector.ExceptionCaught += (s, e) =>
                {
                    // A KeepAliveRequestTimeoutException will be thrown if no keep-alive response is received.
                    Console.WriteLine(e.Exception);
                    gotException = true;
                };

                IConnectFuture future = connector.Connect(new IPEndPoint(IPAddress.Loopback, port)).Await();
                IoSession session = future.Session;
                Assert.IsNotNull(session);

                Thread.Sleep((INTERVAL + TIMEOUT + 3) * 1000);

                Assert.IsFalse(gotException, "got an exception on the client");

                session.Close(true);
            }
        }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     if (log.IsWarnEnabled)
     {
         log.WarnFormat("A keep-alive response message was not received within {0} second(s).",
                        filter.RequestTimeout);
     }
 }
Exemplo n.º 4
0
 public void SetUp()
 {
     acceptor = new AsyncSocketAcceptor();
     IKeepAliveMessageFactory factory = new ServerFactory();
     KeepAliveFilter filter = new KeepAliveFilter(factory, IdleStatus.BothIdle);
     acceptor.FilterChain.AddLast("keep-alive", filter);
     acceptor.DefaultLocalEndPoint = new IPEndPoint(IPAddress.Loopback, 0);
     acceptor.Bind();
     port = ((IPEndPoint)acceptor.LocalEndPoint).Port;
 }
Exemplo n.º 5
0
        public void SetUp()
        {
            acceptor = new AsyncSocketAcceptor();
            IKeepAliveMessageFactory factory = new ServerFactory();
            KeepAliveFilter          filter  = new KeepAliveFilter(factory, IdleStatus.BothIdle);

            acceptor.FilterChain.AddLast("keep-alive", filter);
            acceptor.DefaultLocalEndPoint = new IPEndPoint(IPAddress.Loopback, 0);
            acceptor.Bind();
            port = ((IPEndPoint)acceptor.LocalEndPoint).Port;
        }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     throw new KeepAliveRequestTimeoutException("A keep-alive response message was not received within "
                                                + filter.RequestTimeout + " second(s).");
 }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     // do nothing
 }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     throw new ApplicationException("Shouldn't be invoked.  Please file a bug report.");
 }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     if (log.IsWarnEnabled)
         log.WarnFormat("Closing the session because a keep-alive response message was not received within {0} second(s).",
             filter.RequestTimeout);
     session.Close(true);
 }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     throw new KeepAliveRequestTimeoutException("A keep-alive response message was not received within "
        + filter.RequestTimeout + " second(s).");
 }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     // do nothing
 }
 public void KeepAliveRequestTimedOut(KeepAliveFilter filter, IoSession session)
 {
     throw new ApplicationException("Shouldn't be invoked.  Please file a bug report.");
 }