コード例 #1
0
        protected virtual IMethodReturnMessage InvokeEvent(object source, IMethodCallMessage message)
        {
            if (YTable.ContainsKey((System.Reflection.MethodInfo)message.MethodBase))
            {
                if (((Func <T, MethodInfo, object[], bool>)YTable[(System.Reflection.MethodInfo)message.MethodBase][0])((T)this.context.Target, (System.Reflection.MethodInfo)message.MethodBase, message.Args))
                {
                    return(YTable[(System.Reflection.MethodInfo)message.MethodBase][1].ToMethodReturnMessage(message));
                }
            }

            if (PTable.ContainsKey((System.Reflection.MethodInfo)message.MethodBase))
            {
                return(PTable[(System.Reflection.MethodInfo)message.MethodBase].ToMethodReturnMessage(message));
            }
            else
            {
                IMethodCallMessage callMessage = (IMethodCallMessage)message;
                return(callMessage.ToMethodReturnMessage(this.context.Target));
            }
        }
コード例 #2
0
        public override IMessage Invoke(IMessage message)
        {
            IMethodCallMessage callMessage = (IMethodCallMessage)message;

            return(callMessage.ToMethodReturnMessage(Target));
        }