Tce.RpcAdapter.dispatchMsg C# (CSharp) Méthode

dispatchMsg() public méthode

public dispatchMsg ( RpcMessage m ) : void
m RpcMessage
Résultat void
        public void dispatchMsg(RpcMessage m)
        {
            RpcServantDelegate dg = null;
            if ((m.calltype & RpcMessage.CALL) != 0) {
                lock (_servants) {
                    if (!_servants.ContainsKey(m.ifidx)) {
                        doError( RpcException.RPCERROR_INTERFACE_NOTFOUND,m);
                        return;
                    }
                    dg = _servants[m.ifidx];
                }
                try {
                    RpcMessage msgreturn = dg.invoke(m);
                    if (msgreturn != null) {
                        m.conn.sendMessage(msgreturn);
                    }
                }
                catch (Exception e) {
                    RpcCommunicator.instance().logger.error(" execute servant failed:" + e.ToString());
                    doError(RpcException.RPCERROR_REMOTEMETHOD_EXCEPTION,m);
                }
            }
        }

Usage Example

Exemple #1
0
        // static int count = 0;

        public void dispatchMsg(RpcMessage m)
        {
            if ((m.calltype & RpcMessage.CALL) != 0)
            {
                if (_adapter != null)
                {
                    _adapter.dispatchMsg(m);
                }
            }
            if ((m.calltype & RpcMessage.RETURN) != 0)
            {
                this.doReturnMsg(m);
            }
        }