Castle.DynamicProxy.AbstractInvocation
namespace Castle.DynamicProxy
{
public abstract class AbstractInvocation : IInvocation
{
protected readonly object proxyObject;
public abstract object InvocationTarget { get; }
public abstract Type TargetType { get; }
public abstract MethodInfo MethodInvocationTarget { get; }
public Type[] GenericArguments { get; }
public object Proxy { get; }
public MethodInfo Method { get; }
public object ReturnValue { get; set; }
public object[] Arguments { get; }
protected AbstractInvocation(object proxy, IInterceptor[] interceptors, MethodInfo proxiedMethod, object[] arguments);
public void SetGenericMethodArguments(Type[] arguments);
public MethodInfo GetConcreteMethod();
public MethodInfo GetConcreteMethodInvocationTarget();
public void SetArgumentValue(int index, object value);
public object GetArgumentValue(int index);
public void Proceed();
public IInvocationProceedInfo CaptureProceedInfo();
protected abstract void InvokeMethodOnTarget();
protected void ThrowOnNoTarget();
}
}