Ejemplo n.º 1
0
        /// <summary>
        /// Invokes the matching request handler for a given ClientMessage.
        /// </summary>
        /// <param name="request">The ClientMessage object to process.</param>
        public void HandleRequest(ClientMessage request)
        {
            IonEnvironment.GetLog().WriteLine("[" + mSession.ID + "] --> " + request.Header + request.GetContentString());

            if (request.ID > HIGHEST_MESSAGEID)
                return; // Not in protocol
            if (mRequestHandlers[request.ID] == null)
                return; // Handler not registered

            // Handle request
            Request = request;
            mRequestHandlers[request.ID].Invoke();
            Request = null;
        }