package org.perf4j.aop; /** * AOP-framework agnostic join point. * * An AOP implementation agnostic interface which offers all information required to do a measure, proceed original * method and log result in customizable way. Specific Join Point implementations in AOP libraries/frameworks * should implement it wrapping their own internal structures. * * @author Marcin ZajÄ…czkowski, 2010-01-14 * * @since 0.9.13 */ public interface AbstractJoinPoint { /** * Calls profiled method and returns its result. * * @return result of proceeding * @throws Throwable thrown exception */ public Object proceed() throws Throwable; /** * Returns an object whose method was annotated (profiled). * * @return an object whose method was annotated */ public Object getExecutingObject(); /** * Returns a parameters (arguments) array of processing method. * * @return array of parameters */ public Object[] getParameters(); /** * Returns a processing method name. * * @return processing method name */ public String getMethodName(); /** * Returns the declaring class of the method that was annotated. * * @return the declaring class of the method that was annotated */ public Class<?> getDeclaringClass(); }