## Invocation Object

`org.jboss.aop.Invocation` is the base class for a bunch of different subtypes. Depending on the thing being invoked on a different Invocation object is created. All of the subclasses are in the org.jboss.aop package.

execution(method) | org.jboss.aop.joinpoint.MethodInvocation
get(field) | org.jboss.aop.joinpoint.FieldReadInvocation
set(field) | org.jboss.aop.joinpointFieldWriteInvocation
execution(constructor) | org.jboss.aop.joinpoint.ConstructorInvocation
call(method) AND withincode(method) | org.jboss.aop.joinpoint.MethodCalledByMethodInvocation
call(method) AND withincode(constructor) | org.jboss.aop.joinpoint.MethodCalledByConstructorInvocation
call(constructor) AND withincode(constructor) | org.jboss.aop.joinpoint.ConstructorCalledByConstructorInvocation
call(constructor) AND withincode(method) | org.jboss.aop.joinpoint.ConstructorCalledByMethodInvocation