public DefaultSessionFilterChain(SessionBase session, FilterChainMode filterChainMode, ISessionFilter operateFilter) { _dispatchFilter = SessionBase.DISPATCH_FILTER; _parentSession = session; _appFilters = new List <ISessionFilter>(_parentSession._filters); _decodeFilter = _parentSession._packetDecoderFilter; _operateFilter = operateFilter; _filterChainMode = filterChainMode; _handlerFilter = session._handlerFilter; _cursor = _filterChainMode == FilterChainMode.Send ? _appFilters.Count : INIT_CURSOR; }
protected ISessionFilterChain GetSessionFilterChain( ISessionFilter operateFilter, FilterChainMode filterChainMode) { return(new DefaultSessionFilterChain(this, filterChainMode, operateFilter)); }
public DefaultSessionFilterChain(SessionBase session, FilterChainMode filterChainMode) : this(session, filterChainMode, null) { }
public ISessionFilterChain GetSessionFilterChain(FilterChainMode filterChainMode) { return(new DefaultSessionFilterChain(this, filterChainMode)); }