1 /************************************************************************************** 2 * Copyright (c) Jonas BonŽr, Alexandre Vasseur. All rights reserved. * 3 * http://aspectwerkz.codehaus.org * 4 * ---------------------------------------------------------------------------------- * 5 * The software in this package is published under the terms of the LGPL license * 6 * a copy of which has been included with this distribution in the license.txt file. * 7 **************************************************************************************/ 8 package org.codehaus.aspectwerkz.reflect; 9 10 /** 11 * Interface for the method info implementations. 12 * 13 * @author <a HREF="mailto:jboner@codehaus.org">Jonas BonŽr </a> 14 */ 15 public interface MethodInfo extends MemberInfo { 16 /** 17 * Returns the return type. 18 * 19 * @return the return type 20 */ 21 ClassInfo getReturnType(); 22 23 /** 24 * Returns the parameter types. 25 * 26 * @return the parameter types 27 */ 28 ClassInfo[] getParameterTypes(); 29 30 /** 31 * Returns the parameter names as they appear in the source code. 32 * This information is available only when class are compiled with javac -g (debug info), but is required 33 * for Aspect that are using args() and target()/this() bindings. 34 * <p/> 35 * It returns null if not available. 36 * 37 * @return 38 */ 39 String[] getParameterNames(); 40 41 /** 42 * Returns the exception types. 43 * 44 * @return the exception types 45 */ 46 ClassInfo[] getExceptionTypes(); 47 48 }