protected virtual GameOperationResponse HandleOperationLogin(GameOperationRequest operationRequest, MessageParameters parameters)
        {
            var operation = new LoginUser(peer.Protocol, operationRequest);

            if (!operation.IsValid)
            {
                return(operation.GetErrorResponse((short)ResultCode.InvalidOperationParameter, operation.GetErrorMessage()));
            }

            ThreadPool.QueueUserWorkItem(
                o => this.ExecUserOperation(() => this.HandleLoginUser(operationRequest.ClientId, operation), operationRequest.ClientId, parameters));

            return(null);
        }