1 22 package org.jboss.aop; 23 24 import java.lang.reflect.Constructor ; 25 import java.lang.reflect.Method ; 26 27 import org.jboss.aop.joinpoint.ConstructorJoinpoint; 28 import org.jboss.aop.joinpoint.Joinpoint; 29 import org.jboss.aop.util.MethodHashing; 30 31 37 public class ConstructorInfo extends JoinPointInfo 38 { 39 private Method wrapper; 40 private Constructor constructor; 41 private int index; 42 43 public ConstructorInfo() 44 { 45 } 46 47 public ConstructorInfo(Class clazz, int index, long wrapperHash, long constructorHash, Advisor advisor) 48 { 49 super(advisor, clazz); 50 try 51 { 52 this.index = index; 53 this.wrapper = MethodHashing.findMethodByHash(clazz, wrapperHash); 54 this.constructor = MethodHashing.findConstructorByHash(clazz, constructorHash); 55 this.setAdvisor(advisor); 56 } 57 catch (Exception e) 58 { 59 throw new RuntimeException (e); 60 } 61 } 62 63 66 private ConstructorInfo(ConstructorInfo other) 67 { 68 super(other); 69 } 70 71 protected Joinpoint internalGetJoinpoint() 72 { 73 return new ConstructorJoinpoint(constructor); 74 } 75 76 public JoinPointInfo copy() 77 { 78 return new ConstructorInfo(this); 79 } 80 81 public String toString() 82 { 83 StringBuffer sb = new StringBuffer ("Constructor"); 84 sb.append("["); 85 sb.append("constructor=" + constructor); 86 sb.append("]"); 87 return sb.toString(); 88 } 89 90 public void setWrapper(Method wrapper) 91 { 92 this.wrapper = wrapper; 93 } 94 95 public Method getWrapper() 96 { 97 return wrapper; 98 } 99 100 public void setConstructor(Constructor constructor) 101 { 102 this.constructor = constructor; 103 } 104 105 public Constructor getConstructor() 106 { 107 return constructor; 108 } 109 110 public void setIndex(int index) 111 { 112 this.index = index; 113 } 114 115 public int getIndex() 116 { 117 return index; 118 } 119 } 120 | Popular Tags |