protected override object Invoke(MethodInfo targetMethod, object[] args) { ICalleeProxyInvocationInterceptor interceptor; if (!mMethodToInterceptor.TryGetValue(targetMethod, out interceptor)) { interceptor = CalleeProxyInterceptorFactory.BuildInterceptor(targetMethod, this.CalleeProxyInterceptor, Handler); mMethodToInterceptor[targetMethod] = interceptor; } object result = interceptor.Invoke(targetMethod, args); return(result); }
private IInterceptor BuildInterceptor(MethodInfo method, ICalleeProxyInterceptor interceptor) { return(CalleeProxyInterceptorFactory.BuildInterceptor(method, interceptor, mHandler)); }