1 13 14 15 package org.aspectj.runtime.reflect; 16 17 import org.aspectj.lang.reflect.CodeSignature; 18 19 abstract class CodeSignatureImpl extends MemberSignatureImpl implements CodeSignature { 20 Class [] parameterTypes; 21 String [] parameterNames; 22 Class [] exceptionTypes; 23 24 CodeSignatureImpl(int modifiers, String name, Class declaringType, 25 Class [] parameterTypes, String [] parameterNames, Class [] exceptionTypes) 26 { 27 super(modifiers, name, declaringType); 28 this.parameterTypes = parameterTypes; 29 this.parameterNames = parameterNames; 30 this.exceptionTypes = exceptionTypes; 31 } 32 CodeSignatureImpl(String stringRep) { 33 super(stringRep); 34 } 35 36 public Class [] getParameterTypes() { 37 if (parameterTypes == null) parameterTypes = extractTypes(3); 38 return parameterTypes; 39 } 40 public String [] getParameterNames() { 41 if (parameterNames == null) parameterNames = extractStrings(4); 42 return parameterNames; 43 } 44 public Class [] getExceptionTypes() { 45 if (exceptionTypes == null) exceptionTypes = extractTypes(5); 46 return exceptionTypes; 47 } 48 } 49 | Popular Tags |