jasco.runtime.mixin
Class DummyMixinJP

java.lang.Object
  extended by jasco.runtime.mixin.DummyMixinJP
All Implemented Interfaces:
MethodJoinpoint

public class DummyMixinJP
extends java.lang.Object
implements MethodJoinpoint

Author:
Wim

Constructor Summary
DummyMixinJP(java.lang.Class target)
           
DummyMixinJP(java.lang.Object target)
           
DummyMixinJP(java.lang.Object targetObject, java.lang.Class targetClass)
           
 
Method Summary
 java.lang.Class[] getActualArgumentTypes()
          Returns the actual argument types
 java.lang.annotation.Annotation[] getAnnotations()
          Returns all defined annotations
 java.lang.Object[] getArgumentsArray()
          Returns an array of all arguments
 java.lang.Object getCalledObject()
          Returns the object the method is invoked upon
 java.lang.ClassLoader getClassLoader()
          Returns the classLoader responsible for loading this joinpoint.
 java.lang.String getClassName()
          Returns the fully quantified name of class the method is declared
 java.lang.Class[] getExceptionTypes()
          Returns java.lang.reflect.class objects denoting types of exceptions thrown by this method
 java.lang.String[] getFormalArgumentTypeNames()
          returns array of full class names of formal arguments
 java.lang.Class[] getFormalArgumentTypes()
          Returns the formal argument types
 java.lang.String getFullName()
          Returns the unique name for this method joinpoint
 int getModifiers()
          Returns the modifiers intger, see java.lang.reflect.Modifier
 java.lang.String getName()
          Returns the method name
 java.lang.Class getReturnType()
          Returns java.lang.reflect.class object denoting the return type of this method
 java.lang.String getReturnTypeName()
          returns full class name of return type
 java.lang.String getSignature()
          Returns the unique name for this method joinpoint
 int getSourceLocation()
          returns location of joinpoint in original source code
 java.lang.Object invoke(java.lang.Object obj, java.lang.Object[] args)
          Invokes the replaced method or subsequent around advices, only availabe in around advice
 java.lang.Object invokeAgain()
          Allows to invoke the original method all over again with original arguments.
 java.lang.Object invokeAgain(java.lang.Object calledobject, java.lang.Object[] args)
          Allows to invoke the original method all over again.
 java.lang.Object invokeJAsCoMethod()
          Invokes the replaced method or subsequent around advices with original arguments, only availabe in around advice.
 java.lang.Object invokeNoAspectAgain()
          Allows to invoke the original method again with original arguments.
 java.lang.Object invokeOriginal(java.lang.Object obj, java.lang.Object[] args)
          Invokes the original method, only availabe in around advice.
 java.lang.Object invokeOriginalJAsCoMethod()
          Invokes the original method with original arguments, only availabe in around advice.
 boolean isCall()
          Returns true when this method joinpoint is a call joinpoint
 boolean isExecution()
          Returns true when this method joinpoint is an execution joinpoint
 java.lang.Class loadClass()
          Loads this class
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DummyMixinJP

public DummyMixinJP(java.lang.Object target)

DummyMixinJP

public DummyMixinJP(java.lang.Class target)

DummyMixinJP

public DummyMixinJP(java.lang.Object targetObject,
                    java.lang.Class targetClass)
Method Detail

getExceptionTypes

public java.lang.Class[] getExceptionTypes()
Description copied from interface: MethodJoinpoint
Returns java.lang.reflect.class objects denoting types of exceptions thrown by this method

Specified by:
getExceptionTypes in interface MethodJoinpoint

getReturnType

public java.lang.Class getReturnType()
Description copied from interface: MethodJoinpoint
Returns java.lang.reflect.class object denoting the return type of this method

Specified by:
getReturnType in interface MethodJoinpoint

getFullName

public java.lang.String getFullName()
Description copied from interface: MethodJoinpoint
Returns the unique name for this method joinpoint

Specified by:
getFullName in interface MethodJoinpoint

getSignature

public java.lang.String getSignature()
Description copied from interface: MethodJoinpoint
Returns the unique name for this method joinpoint

Specified by:
getSignature in interface MethodJoinpoint

isExecution

public boolean isExecution()
Description copied from interface: MethodJoinpoint
Returns true when this method joinpoint is an execution joinpoint

Specified by:
isExecution in interface MethodJoinpoint

isCall

public boolean isCall()
Description copied from interface: MethodJoinpoint
Returns true when this method joinpoint is a call joinpoint

Specified by:
isCall in interface MethodJoinpoint

getName

public java.lang.String getName()
Description copied from interface: MethodJoinpoint
Returns the method name

Specified by:
getName in interface MethodJoinpoint

loadClass

public java.lang.Class loadClass()
Description copied from interface: MethodJoinpoint
Loads this class

Specified by:
loadClass in interface MethodJoinpoint

getAnnotations

public java.lang.annotation.Annotation[] getAnnotations()
Description copied from interface: MethodJoinpoint
Returns all defined annotations

Specified by:
getAnnotations in interface MethodJoinpoint

getActualArgumentTypes

public java.lang.Class[] getActualArgumentTypes()
Description copied from interface: MethodJoinpoint
Returns the actual argument types

Specified by:
getActualArgumentTypes in interface MethodJoinpoint

getFormalArgumentTypes

public java.lang.Class[] getFormalArgumentTypes()
Description copied from interface: MethodJoinpoint
Returns the formal argument types

Specified by:
getFormalArgumentTypes in interface MethodJoinpoint

getClassName

public java.lang.String getClassName()
Description copied from interface: MethodJoinpoint
Returns the fully quantified name of class the method is declared

Specified by:
getClassName in interface MethodJoinpoint

getModifiers

public int getModifiers()
Description copied from interface: MethodJoinpoint
Returns the modifiers intger, see java.lang.reflect.Modifier

Specified by:
getModifiers in interface MethodJoinpoint

getArgumentsArray

public java.lang.Object[] getArgumentsArray()
Description copied from interface: MethodJoinpoint
Returns an array of all arguments

Specified by:
getArgumentsArray in interface MethodJoinpoint

getCalledObject

public java.lang.Object getCalledObject()
Description copied from interface: MethodJoinpoint
Returns the object the method is invoked upon

Specified by:
getCalledObject in interface MethodJoinpoint

invokeJAsCoMethod

public java.lang.Object invokeJAsCoMethod()
                                   throws java.lang.Exception
Description copied from interface: MethodJoinpoint
Invokes the replaced method or subsequent around advices with original arguments, only availabe in around advice. Is equivalent to invoking proceed(), proceed is however the preferred because it will execute considerably faster because of optimizations.

Specified by:
invokeJAsCoMethod in interface MethodJoinpoint
Throws:
ProceedFinishedException - proceed was previously invoked and all advices and original method already executed.
java.lang.Exception

invokeOriginalJAsCoMethod

public java.lang.Object invokeOriginalJAsCoMethod()
                                           throws java.lang.Exception
Description copied from interface: MethodJoinpoint
Invokes the original method with original arguments, only availabe in around advice. WARNING: This method bypasses the around chain, subsequent arounds are not executed! Use invokeJAsCoMethod if you just want to proceed.

Specified by:
invokeOriginalJAsCoMethod in interface MethodJoinpoint
Throws:
java.lang.Exception

invoke

public java.lang.Object invoke(java.lang.Object obj,
                               java.lang.Object[] args)
                        throws java.lang.Exception
Description copied from interface: MethodJoinpoint
Invokes the replaced method or subsequent around advices, only availabe in around advice

Specified by:
invoke in interface MethodJoinpoint
Parameters:
obj - The object to invoke the method upon, is typically thisJoinPointObject keyword
args - The arguments to invoke the proceed chain with.
Throws:
ProceedFinishedException - proceed was previously invoked and all advices and original method already executed.
java.lang.Exception

invokeOriginal

public java.lang.Object invokeOriginal(java.lang.Object obj,
                                       java.lang.Object[] args)
                                throws java.lang.Exception
Description copied from interface: MethodJoinpoint
Invokes the original method, only availabe in around advice. WARNING: This method bypasses the around chain, subsequent arounds are not executed! Use invokeJAsCoMethod if you just want to proceed.

Specified by:
invokeOriginal in interface MethodJoinpoint
Parameters:
obj - The object to invoke the method upon, is typically thisJoinPointObject keyword
args - The arguments to invoke the original method with.
Throws:
java.lang.Exception

invokeAgain

public java.lang.Object invokeAgain()
                             throws java.lang.Exception
Description copied from interface: MethodJoinpoint
Allows to invoke the original method all over again with original arguments. This means that the list of applicable aspects is rebuild. WARNING: could easily cause an infinite loop if this aspect is applicable again! Does not work with method overloading yet.

Specified by:
invokeAgain in interface MethodJoinpoint
Throws:
java.lang.Exception

invokeAgain

public java.lang.Object invokeAgain(java.lang.Object calledobject,
                                    java.lang.Object[] args)
Description copied from interface: MethodJoinpoint
Allows to invoke the original method all over again. This means that the list of applicable aspects is rebuild and all aspects (including the current one) are triggered again if applicable. WARNING: could easily cause an infinite loop if this aspect is applicable again! Does not work with method overloading yet.

Specified by:
invokeAgain in interface MethodJoinpoint
Parameters:
calledobject - The object to invoke the method upon, is typically thisJoinPointObject keyword
args - The arguments to invoke the original method with.

invokeNoAspectAgain

public java.lang.Object invokeNoAspectAgain()
                                     throws java.lang.Exception
Description copied from interface: MethodJoinpoint
Allows to invoke the original method again with original arguments. If this aspect is however triggered by a method defined in another aspect (aspects on aspects), the triggering method for that aspect is used unless that aspect is triggered by a method defined in an aspect etc...

Specified by:
invokeNoAspectAgain in interface MethodJoinpoint
Throws:
java.lang.Exception

getClassLoader

public java.lang.ClassLoader getClassLoader()
Description copied from interface: MethodJoinpoint
Returns the classLoader responsible for loading this joinpoint. When using reflection on certain classes related to the joinpoint use this classloader to ensure classloader safety in complicated class loader hierarchies.

Specified by:
getClassLoader in interface MethodJoinpoint

getReturnTypeName

public java.lang.String getReturnTypeName()
Description copied from interface: MethodJoinpoint
returns full class name of return type

Specified by:
getReturnTypeName in interface MethodJoinpoint
Returns:
full class name of return type

getFormalArgumentTypeNames

public java.lang.String[] getFormalArgumentTypeNames()
Description copied from interface: MethodJoinpoint
returns array of full class names of formal arguments

Specified by:
getFormalArgumentTypeNames in interface MethodJoinpoint
Returns:
full class names of formal arguments

getSourceLocation

public int getSourceLocation()
Description copied from interface: MethodJoinpoint
returns location of joinpoint in original source code

Specified by:
getSourceLocation in interface MethodJoinpoint
Returns:
line number or -1 if not available