Пример #1
0
        /// <summary>
        /// Base constructor.
        /// </summary>
        /// <param name="handlers">All handlers for storing.</param>
        /// <param name="defaultRequestHandler"></param>
        /// <param name="defaultResponseHandler"></param>
        /// <param name="defaultEventHandler"></param>
        public ServerHandlerList(IEnumerable <IHandler <IServerPeer> > handlers,
                                 IDefaultRequestHandler <IServerPeer> defaultRequestHandler,
                                 IDefaultResponseHandler <IServerPeer> defaultResponseHandler,
                                 IDefaultEventHandler <IServerPeer> defaultEventHandler)
        {
            _defaultEventHandler    = defaultEventHandler;
            _defaultRequestHandler  = defaultRequestHandler;
            _defaultResponseHandler = defaultResponseHandler;

            _requestCodeHandlerList    = new List <IHandler <IServerPeer> >();
            _requestSubCodeHandlerList = new List <IHandler <IServerPeer> >();

            _responseCodeHandlerList    = new List <IHandler <IServerPeer> >();
            _responseSubCodeHandlerList = new List <IHandler <IServerPeer> >();

            _eventCodeHandlerList    = new List <IHandler <IServerPeer> >();
            _eventSubCodeHandlerList = new List <IHandler <IServerPeer> >();

            foreach (var handler in handlers)
            {
                RegisterHandler(handler);
            }
        }