예제 #1
0
 public override void SessionClosed(INextFilter nextFilter, IoSession session)
 {
     test.testResult += id + "SC";
     nextFilter.SessionClosed(session);
 }
예제 #2
0
 /// <inheritdoc/>
 public virtual void SessionClosed(INextFilter nextFilter, IoSession session)
 {
     nextFilter.SessionClosed(session);
 }
예제 #3
0
 /// <inheritdoc/>
 public override void SessionClosed(INextFilter nextFilter, IoSession session)
 {
     Profile(_profileSessionClosed, _sessionClosedTimerWorker, () => nextFilter.SessionClosed(session));
 }
예제 #4
0
 /// <inheritdoc/>
 public override void SessionClosed(INextFilter nextFilter, IoSession session)
 {
     Profile(_profileSessionClosed, _sessionClosedTimerWorker, () => nextFilter.SessionClosed(session));
 }
예제 #5
0
 public override void SessionClosed(INextFilter nextFilter, IoSession session)
 {
     test.testResult += id + "SC";
     nextFilter.SessionClosed(session);
 }
예제 #6
0
 /// <inheritdoc/>
 public virtual void SessionClosed(INextFilter nextFilter, IoSession session)
 {
     nextFilter.SessionClosed(session);
 }
예제 #7
0
        /// <inheritdoc/>
        public override void SessionClosed(INextFilter nextFilter, IoSession session)
        {
            // Call finishDecode() first when a connection is closed.
            IProtocolDecoder decoder = _factory.GetDecoder(session);
            IProtocolDecoderOutput decoderOut = GetDecoderOut(session, nextFilter);

            try
            {
                decoder.FinishDecode(session, decoderOut);
            }
            catch (Exception ex)
            {
                ProtocolDecoderException pde = ex as ProtocolDecoderException;
                if (pde == null)
                    pde = new ProtocolDecoderException(null, ex);
                throw pde;
            }
            finally
            {
                // Dispose everything
                DisposeCodec(session);
                decoderOut.Flush(nextFilter, session);
            }

            // Call the next filter
            nextFilter.SessionClosed(session);
        }