View Javadoc

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.transform;
9   
10  import java.util.ArrayList;
11  import java.util.List;
12  
13  import org.codehaus.aspectwerkz.joinpoint.impl.StaticInitializerSignatureImpl;
14  import org.objectweb.asm.Constants;
15  
16  /***
17   * Interface with common constants used in the transformation process.
18   *
19   * @author <a href="mailto:jboner@codehaus.org">Jonas BonŽr </a>
20   */
21  public interface TransformationConstants extends Constants {
22      public static final List EMTPTY_ARRAY_LIST = new ArrayList();
23  
24      // prefixes
25      public static final String DELIMITER = "$_AW_$";
26      public static final String ASPECTWERKZ_PREFIX = "___AW_";
27      public static final String WRAPPER_METHOD_PREFIX = "aw$";
28      public static final String SYNTHETIC_MEMBER_PREFIX = "aw$";
29      public static final String ORIGINAL_METHOD_PREFIX = WRAPPER_METHOD_PREFIX + "original" + DELIMITER;
30      public static final String STATICINITIALIZER_WRAPPER_METHOD_KEY = "aw_clinit";      
31      public static final String INVOKE_WRAPPER_METHOD_PREFIX = "INVOKE" + DELIMITER;
32      public static final String PUTFIELD_WRAPPER_METHOD_PREFIX = "PUTFIELD" + DELIMITER;
33      public static final String GETFIELD_WRAPPER_METHOD_PREFIX = "GETFIELD" + DELIMITER;
34      public static final String JOIN_POINT_CLASS_SUFFIX = ASPECTWERKZ_PREFIX + "JoinPoint";
35      
36      // internal fields
37      public static final String SERIAL_VERSION_UID_FIELD_NAME = "serialVersionUID";
38      public static final String TARGET_CLASS_FIELD_NAME = SYNTHETIC_MEMBER_PREFIX + "clazz";
39      public static final String EMITTED_JOINPOINTS_FIELD_NAME = SYNTHETIC_MEMBER_PREFIX + "emittedJoinPoints";
40  
41      // internal methods
42      public static final String INIT_JOIN_POINTS_METHOD_NAME = WRAPPER_METHOD_PREFIX + "initJoinPoints";
43      public static final String STATIC_INITIALIZATION_METHOD_NAME = WRAPPER_METHOD_PREFIX + "staticinitialization";
44  
45      // method and class names
46      public static final String INIT_METHOD_NAME = "<init>";
47      public static final String CLINIT_METHOD_NAME = "<clinit>";
48      public static final String CLINIT_METHOD_SIGNATURE = "()V";
49      public static final String CLASS_LOADER_REFLECT_CLASS_NAME = "java.lang.ClassLoader";
50      public static final String CLASS_LOADER_CLASS_NAME = "java/lang/ClassLoader";
51      public static final String DEFINE_CLASS_METHOD_NAME = "defineClass";
52      public static final String INVOKE_METHOD_NAME = "invoke";
53      public static final String FOR_NAME_METHOD_NAME = "forName";
54      public static final String LOAD_JOIN_POINT_METHOD_NAME = "loadJoinPoint";
55      public static final String MIXINS_CLASS_NAME = "org/codehaus/aspectwerkz/aspect/management/Mixins";
56      public static final String MIXIN_OF_METHOD_NAME = "mixinOf";
57      public static final String MIXIN_OF_METHOD_PER_JVM_SIGNATURE = "(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Object;";
58      public static final String MIXIN_OF_METHOD_PER_CLASS_SIGNATURE = "(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;";
59      public static final String MIXIN_OF_METHOD_PER_INSTANCE_SIGNATURE = "(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;";
60  
61      // java types and signatures
62      public static final String SHORT_CLASS_NAME = "java/lang/Short";
63      public static final String INTEGER_CLASS_NAME = "java/lang/Integer";
64      public static final String LONG_CLASS_NAME = "java/lang/Long";
65      public static final String FLOAT_CLASS_NAME = "java/lang/Float";
66      public static final String DOUBLE_CLASS_NAME = "java/lang/Double";
67      public static final String BYTE_CLASS_NAME = "java/lang/Byte";
68      public static final String BOOLEAN_CLASS_NAME = "java/lang/Boolean";
69      public static final String CHARACTER_CLASS_NAME = "java/lang/Character";
70      public static final String OBJECT_CLASS_SIGNATURE = "Ljava/lang/Object;";
71      public static final String OBJECT_CLASS_NAME = "java/lang/Object";
72      public static final String CLASS_CLASS_SIGNATURE = "Ljava/lang/Class;";
73      public static final String CLASS_CLASS = "java/lang/Class";
74      public static final String THROWABLE_CLASS_NAME = "java/lang/Throwable";
75      public static final String SHORT_VALUE_METHOD_NAME = "shortValue";
76      public static final String INT_VALUE_METHOD_NAME = "intValue";
77      public static final String LONG_VALUE_METHOD_NAME = "longValue";
78      public static final String FLOAT_VALUE_METHOD_NAME = "floatValue";
79      public static final String DOUBLE_VALUE_METHOD_NAME = "doubleValue";
80      public static final String BYTE_VALUE_METHOD_NAME = "byteValue";
81      public static final String BOOLEAN_VALUE_METHOD_NAME = "booleanValue";
82      public static final String CHAR_VALUE_METHOD_NAME = "charValue";
83      public static final String CHAR_VALUE_METHOD_SIGNATURE = "()C";
84      public static final String BOOLEAN_VALUE_METHOD_SIGNATURE = "()Z";
85      public static final String BYTE_VALUE_METHOD_SIGNATURE = "()B";
86      public static final String DOUBLE_VALUE_METHOD_SIGNATURE = "()D";
87      public static final String FLOAT_VALUE_METHOD_SIGNATURE = "()F";
88      public static final String LONG_VALUE_METHOD_SIGNATURE = "()J";
89      public static final String INT_VALUE_METHOD_SIGNATURE = "()I";
90      public static final String SHORT_VALUE_METHOD_SIGNATURE = "()S";
91      public static final String SHORT_CLASS_INIT_METHOD_SIGNATURE = "(S)V";
92      public static final String INTEGER_CLASS_INIT_METHOD_SIGNATURE = "(I)V";
93      public static final String LONG_CLASS_INIT_METHOD_SIGNATURE = "(J)V";
94      public static final String FLOAT_CLASS_INIT_METHOD_SIGNATURE = "(F)V";
95      public static final String DOUBLE_CLASS_INIT_METHOD_SIGNATURE = "(D)V";
96      public static final String BYTE_CLASS_INIT_METHOD_SIGNATURE = "(B)V";
97      public static final String BOOLEAN_CLASS_INIT_METHOD_SIGNATURE = "(Z)V";
98      public static final String CHARACTER_CLASS_INIT_METHOD_SIGNATURE = "(C)V";
99      public static final String NO_PARAMS_RETURN_VOID_METHOD_SIGNATURE = "()V";
100     public static final String CLASS_CLASS_GETCLASSLOADER_METHOD_SIGNATURE = "()Ljava/lang/ClassLoader;";
101     public static final String ENCLOSING_SJP_FIELD_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/EnclosingStaticJoinPoint;";
102     public static final String L = "L";
103     public static final String I = "I";
104     public static final String SEMICOLON = ";";
105 
106     public static final byte EMPTY_WRAPPER_ATTRIBUTE_VALUE_EMPTY = Byte.MIN_VALUE;
107     public static final byte EMPTY_WRAPPER_ATTRIBUTE_VALUE_NOTEMPTY = Byte.MAX_VALUE;
108 
109     // optim flags
110     public static final boolean OPTIMIZED_JOIN_POINT = true;
111     public static final boolean NON_OPTIMIZED_JOIN_POINT = false;
112 
113     // static and member field names
114     public static final String MIXIN_FIELD_NAME = SYNTHETIC_MEMBER_PREFIX + "MIXIN_";
115     public static final String SIGNATURE_FIELD_NAME = "SIGNATURE";
116     public static final String META_DATA_FIELD_NAME = "META_DATA";
117     public static final String ASPECT_FIELD_PREFIX = "ASPECT_";
118     public static final String STACK_FRAME_COUNTER_FIELD_NAME = "STACK_FRAME_COUNTER";
119     public static final String INTERCEPTOR_INDEX_FIELD_NAME = "INTERCEPTOR_INDEX";
120     public static final String CALLEE_INSTANCE_FIELD_NAME = "CALLEE";
121     public static final String CALLER_INSTANCE_FIELD_NAME = "CALLER";
122     public static final String ARGUMENT_FIELD = "ARGUMENT_";
123     public static final String RETURN_VALUE_FIELD_NAME = "RETURN_VALUE";
124     public static final String OPTIMIZED_JOIN_POINT_INSTANCE_FIELD_NAME = "OPTIMIZED_JOIN_POINT";
125     public static final String ENCLOSING_SJP_FIELD_NAME = "ENCLOSINGSJP";
126 
127     public static final String AROUND_INTERCEPTORS_FIELD_NAME = "AROUND_INTERCEPTORS";
128     public static final String NR_OF_AROUND_INTERCEPTORS_FIELD_NAME = "NR_OF_AROUND_INTERCEPTORS";
129     public static final String BEFORE_INTERCEPTORS_FIELD_NAME = "BEFORE_INTERCEPTORS";
130     public static final String NR_OF_BEFORE_INTERCEPTORS_FIELD_NAME = "NR_OF_BEFORE_INTERCEPTORS";
131     public static final String AFTER_INTERCEPTORS_FIELD_NAME = "AFTER_INTERCEPTORS";
132     public static final String NR_OF_AFTER_INTERCEPTORS_FIELD_NAME = "NR_OF_AFTER_INTERCEPTORS";
133     public static final String AFTER_RETURNING_INTERCEPTORS_FIELD_NAME = "AFTER_RETURNING_INTERCEPTORS";
134     public static final String NR_OF_AFTER_RETURNING_INTERCEPTORS_FIELD_NAME = "NR_OF_AFTER_RETURNING_INTERCEPTORS";
135     public static final String AFTER_THROWING_INTERCEPTORS_FIELD_NAME = "AFTER_THROWING_INTERCEPTORS";
136     public static final String NR_OF_AFTER_THROWING_INTERCEPTORS_FIELD_NAME = "NR_OF_AFTER_THROWING_INTERCEPTORS";
137 
138     // runtime system signatures and types
139     
140     public static final String JOIN_POINT_MANAGER_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/management/JoinPointManager";
141     public static final String LOAD_JOIN_POINT_METHOD_SIGNATURE = "(ILjava/lang/Class;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;IILjava/lang/String;)V";
142     public static final String FOR_NAME_METHOD_SIGNATURE = "(Ljava/lang/String;)Ljava/lang/Class;";
143     public static final String METHOD_SIGNATURE_IMPL_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/impl/MethodSignatureImpl";
144     public static final String METHOD_SIGNATURE_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/MethodSignatureImpl;";
145     public static final String CONSTRUCTOR_SIGNATURE_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/ConstructorSignatureImpl;";
146     public static final String FIELD_SIGNATURE_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/FieldSignatureImpl;";
147     public static final String HANDLER_SIGNATURE_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/CatchClauseSignatureImpl;";
148     public static final String NEW_METHOD_SIGNATURE_METHOD_SIGNATURE = "(Ljava/lang/Class;I)Lorg/codehaus/aspectwerkz/joinpoint/impl/MethodSignatureImpl;";
149     public static final String NEW_CONSTRUCTOR_SIGNATURE_METHOD_SIGNATURE = "(Ljava/lang/Class;I)Lorg/codehaus/aspectwerkz/joinpoint/impl/ConstructorSignatureImpl;";
150     public static final String NEW_FIELD_SIGNATURE_METHOD_SIGNATURE = "(Ljava/lang/Class;I)Lorg/codehaus/aspectwerkz/joinpoint/impl/FieldSignatureImpl;";
151     public static final String NEW_HANDLER_SIGNATURE_METHOD_SIGNATURE = "(Ljava/lang/Class;)Lorg/codehaus/aspectwerkz/joinpoint/impl/CatchClauseSignatureImpl;";
152     public static final String SIGNATURE_FACTORY_CLASS = "org/codehaus/aspectwerkz/joinpoint/management/SignatureFactory";
153     public static final String ASPECTS_CLASS_NAME = "org/codehaus/aspectwerkz/aspect/management/Aspects";
154     public static final String ASPECT_OF_METHOD_NAME = "aspect$Of";
155     public static final String ASPECT_OF_PER_JVM_METHOD_SIGNATURE = "(Ljava/lang/ClassLoader;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;";
156     public static final String GETCLASSLOADER_METHOD_NAME = "getClassLoader";
157     public static final String ASPECT_OF_PER_CLASS_METHOD_SIGNATURE = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;";
158     public static final String ASPECT_OF_PER_INSTANCE_METHOD_SIGNATURE = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;";
159     public static final String GET_CFLOW_STACK_METHOD_NAME = "getCflowStack";
160     public static final String GET_CFLOW_STACK_METHOD_SIGNATURE = "(Ljava/lang/Class;)Lorg/codehaus/aspectwerkz/CflowStack;";
161     public static final String GET_ENCLOSING_SJP_METHOD_NAME = "getEnclosingStaticJoinPoint";
162     public static final String GET_ENCLOSING_SJP_METHOD_SIGNATURE = "()Lorg/codehaus/aspectwerkz/joinpoint/EnclosingStaticJoinPoint;";
163     public static final String GET_SIGNATURE_METHOD_NAME = "getSignature";
164     public static final String GET_SIGNATURE_METHOD_SIGNATURE = "()Lorg/codehaus/aspectwerkz/joinpoint/Signature;";
165     public static final String GET_RTTI_METHOD_NAME = "getRtti";
166     public static final String GET_RTTI_METHOD_SIGNATURE = "()Lorg/codehaus/aspectwerkz/joinpoint/Rtti;";
167     public static final String PROCEED_METHOD_NAME = "proceed";
168     public static final String PROCEED_METHOD_SIGNATURE = "()Ljava/lang/Object;";
169     public static final String COPY_METHOD_NAME = "copy";
170     public static final String COPY_METHOD_SIGNATURE = "()Lorg/codehaus/aspectwerkz/joinpoint/StaticJoinPoint;";
171     public static final String ADD_META_DATA_METHOD_NAME = "addMetaData";
172     public static final String ADD_META_DATA_METHOD_SIGNATURE = "(Ljava/lang/Object;Ljava/lang/Object;)V";
173     public static final String MAP_CLASS_SIGNATURE = "Ljava/util/Map;";
174     public static final String MAP_CLASS_NAME = "java/util/Map";
175     public static final String PUT_METHOD_NAME = "put";
176     public static final String PUT_METHOD_SIGNATURE = "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;";
177     public static final String GET_META_DATA_METHOD_NAME = "getMetaData";
178     public static final String GET_TARGET_METHOD_NAME = "getTarget";
179     public static final String GET_THIS_METHOD_NAME = "getThis";
180     public static final String GET_CALLER_METHOD_NAME = "getCaller";
181     public static final String GET_CALLEE_METHOD_NAME = "getCallee";
182     public static final String GET_METHOD_NAME = "get";
183     public static final String GET_METHOD_SIGNATURE = "(Ljava/lang/Object;)Ljava/lang/Object;";
184     public static final String GET_META_DATA_METHOD_SIGNATURE = "(Ljava/lang/Object;)Ljava/lang/Object;";
185     public static final String NEW_METHOD_SIGNATURE_METHOD_NAME = "newMethodSignature";
186     public static final String NEW_CONSTRUCTOR_SIGNATURE_METHOD_NAME = "newConstructorSignature";
187     public static final String NEW_FIELD_SIGNATURE_METHOD_NAME = "newFieldSignature";
188     public static final String NEW_CATCH_CLAUSE_SIGNATURE_METHOD_NAME = "newCatchClauseSignature";
189     public static final String NEW_ENCLOSING_SJP_METHOD_NAME = "newEnclosingStaticJoinPoint";
190     public static final String NEW_ENCLOSING_SJP_METHOD_SIGNATURE = "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Lorg/codehaus/aspectwerkz/joinpoint/EnclosingStaticJoinPoint;";
191     public static final String HASH_MAP_CLASS_NAME = "java/util/HashMap";
192     public static final String NO_PARAM_RETURN_VOID_SIGNATURE = "()V";
193     public static final String CLASS_NOT_FOUND_EXCEPTION_CLASS_NAME = "java/lang/ClassNotFoundException";
194     public static final String GET_CALLER_CLASS_METHOD_NAME = "getCallerClass";
195     public static final String GET_CALLER_CLASS_METHOD_SIGNATURE = "()Ljava/lang/Class;";
196     public static final String GET_CALLEE_CLASS_METHOD_NAME = "getCalleeClass";
197     public static final String GET_CALLEE_CLASS_METHOD_SIGNATURE = "()Ljava/lang/Class;";
198     public static final String GET_TARGET_CLASS_METHOD_NAME = "getTargetClass";
199     public static final String GET_TARGET_CLASS_METHOD_SIGNATURE = "()Ljava/lang/Class;";
200     public static final String GET_TYPE_METHOD_NAME = "getType";
201     public static final String GET_TYPE_METHOD_SIGNATURE = "()Lorg/codehaus/aspectwerkz/joinpoint/management/JoinPointType;";
202     public static final String RESET_METHOD_NAME = "reset";
203     public static final String RUNTIME_EXCEPTION_CLASS_NAME = "java/lang/RuntimeException";
204     public static final String RUNTIME_EXCEPTION_INIT_METHOD_SIGNATURE = "(Ljava/lang/String;)V";
205     public static final String IS_IN_CFLOW_METOD_NAME = "isInCflow";
206     public static final String IS_IN_CFLOW_METOD_SIGNATURE = "()Z";
207     public static final String STATIC_JOIN_POINT_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/StaticJoinPoint";
208     public static final String STATIC_JOIN_POINT_JAVA_CLASS_NAME = "org.codehaus.aspectwerkz.joinpoint.StaticJoinPoint";
209     public static final String JOIN_POINT_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/JoinPoint";
210     public static final String JOIN_POINT_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/JoinPoint;";
211     public static final String JOIN_POINT_JAVA_CLASS_NAME = "org.codehaus.aspectwerkz.joinpoint.JoinPoint";
212     public static final String NO_PARAMS_SIGNATURE = "()";
213 
214     public static final String METHOD_RTTI_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/MethodRttiImpl;";
215     public static final String METHOD_RTTI_IMPL_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/impl/MethodRttiImpl";
216     public static final String METHOD_RTTI_IMPL_INIT_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/impl/MethodSignatureImpl;Ljava/lang/Object;Ljava/lang/Object;)V";
217     public static final String CONSTRUCTOR_RTTI_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/ConstructorRttiImpl;";
218     public static final String CONSTRUCTOR_RTTI_IMPL_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/impl/ConstructorRttiImpl";
219     public static final String CONSTRUCTOR_RTTI_IMPL_INIT_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/impl/ConstructorSignatureImpl;Ljava/lang/Object;Ljava/lang/Object;)V";
220     public static final String FIELD_RTTI_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/FieldRttiImpl;";
221     public static final String FIELD_RTTI_IMPL_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/impl/FieldRttiImpl";
222     public static final String FIELD_RTTI_IMPL_INIT_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/impl/FieldSignatureImpl;Ljava/lang/Object;Ljava/lang/Object;)V";
223     public static final String HANDLER_RTTI_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/CatchClauseRttiImpl;";
224     public static final String HANDLER_RTTI_IMPL_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/impl/CatchClauseRttiImpl";
225     public static final String HANDLER_RTTI_IMPL_INIT_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/impl/CatchClauseSignatureImpl;Ljava/lang/Object;Ljava/lang/Object;)V";
226     public static final String SET_PARAMETER_VALUES_METHOD_NAME = "setParameterValues";
227     public static final String SET_PARAMETER_VALUES_METHOD_SIGNATURE = "([Ljava/lang/Object;)V";
228     public static final String SET_PARAMETER_VALUE_METHOD_NAME = "setParameterValue";
229     public static final String SET_PARAMETER_VALUE_METHOD_SIGNATURE = "(Ljava/lang/Object;)V";
230     public static final String SET_FIELD_VALUE_METHOD_NAME = "setFieldValue";
231     public static final String SET_FIELD_VALUE_METHOD_SIGNATURE = "(Ljava/lang/Object;)V";
232     public static final String SET_RETURN_VALUE_METHOD_NAME = "setReturnValue";
233     public static final String SET_RETURN_VALUE_METHOD_SIGNATURE = "(Ljava/lang/Object;)V";
234     public static final String STATICINITIALIZATION_RTTI_IMPL_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/impl/StaticInitializationRttiImpl";
235     public static final String STATICINITIALIZATION_RTTI_IMPL_INIT_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/impl/StaticInitializerSignatureImpl;)V";
236 
237     public static final String HAS_INSTANCE_LEVEL_ASPECT_INTERFACE_NAME = "org/codehaus/aspectwerkz/aspect/management/HasInstanceLevelAspect";
238     public static final String INSTANCE_LEVEL_ASPECT_MAP_FIELD_NAME = SYNTHETIC_MEMBER_PREFIX + "instanceLevelAspects";
239     public static final String INSTANCE_LEVEL_ASPECT_MAP_FIELD_SIGNATURE = "Ljava/util/Map;";
240     public static final String GET_INSTANCE_LEVEL_ASPECT_METHOD_NAME = WRAPPER_METHOD_PREFIX + "getAspect";
241     public static final String GET_INSTANCE_LEVEL_ASPECT_METHOD_SIGNATURE = "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;";
242 
243     public static final String ADVISABLE_CLASS_JAVA_NAME = "org.codehaus.aspectwerkz.intercept.Advisable";
244     public static final String ADVISABLE_CLASS_NAME = "org/codehaus/aspectwerkz/intercept/Advisable";
245     public static final String INTERCEPT_INVOKE_METHOD_NAME = "invoke";
246     public static final String AROUND_ADVICE_INVOKE_METHOD_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/JoinPoint;)Ljava/lang/Object;";
247     public static final String BEFORE_ADVICE_INVOKE_METHOD_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/JoinPoint;)V";
248     public static final String AFTER_ADVICE_INVOKE_METHOD_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/JoinPoint;)V";
249     public static final String AFTER_RETURNING_ADVICE_INVOKE_METHOD_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/JoinPoint;Ljava/lang/Object;)V";
250     public static final String AFTER_THROWING_ADVICE_INVOKE_METHOD_SIGNATURE = "(Lorg/codehaus/aspectwerkz/joinpoint/JoinPoint;Ljava/lang/Throwable;)V";
251     public static final String AROUND_ADVICE_CLASS_NAME = "org/codehaus/aspectwerkz/intercept/AroundAdvice";
252     public static final String BEFORE_ADVICE_CLASS_NAME = "org/codehaus/aspectwerkz/intercept/BeforeAdvice";
253     public static final String AFTER_ADVICE_CLASS_NAME = "org/codehaus/aspectwerkz/intercept/AfterAdvice";
254     public static final String AFTER_RETURNING_ADVICE_CLASS_NAME = "org/codehaus/aspectwerkz/intercept/AfterReturningAdvice";
255     public static final String AFTER_THROWING_ADVICE_CLASS_NAME = "org/codehaus/aspectwerkz/intercept/AfterThrowingAdvice";
256     public static final String AROUND_ADVICE_ARRAY_CLASS_SIGNATURE = "[Lorg/codehaus/aspectwerkz/intercept/AroundAdvice;";
257     public static final String BEFORE_ADVICE_ARRAY_CLASS_SIGNATURE = "[Lorg/codehaus/aspectwerkz/intercept/BeforeAdvice;";
258     public static final String AFTER_ADVICE_ARRAY_CLASS_SIGNATURE = "[Lorg/codehaus/aspectwerkz/intercept/AfterAdvice;";
259     public static final String AFTER_RETURNING_ADVICE_ARRAY_CLASS_SIGNATURE = "[Lorg/codehaus/aspectwerkz/intercept/AfterReturningAdvice;";
260     public static final String AFTER_THROWING_ADVICE_ARRAY_CLASS_SIGNATURE = "[Lorg/codehaus/aspectwerkz/intercept/AfterThrowingAdvice;";
261     public static final String GET_AROUND_ADVICE_METHOD_NAME = "aw$getAroundAdvice";
262     public static final String GET_AROUND_ADVICE_METHOD_SIGNATURE = "(I)[Lorg/codehaus/aspectwerkz/intercept/AroundAdvice;";
263     public static final String GET_BEFORE_ADVICE_METHOD_NAME = "aw$getBeforeAdvice";
264     public static final String GET_BEFORE_ADVICE_METHOD_SIGNATURE = "(I)[Lorg/codehaus/aspectwerkz/intercept/BeforeAdvice;";
265     public static final String GET_AFTER_ADVICE_METHOD_NAME = "aw$getAfterAdvice";
266     public static final String GET_AFTER_ADVICE_METHOD_SIGNATURE = "(I)[Lorg/codehaus/aspectwerkz/intercept/AfterAdvice;";
267     public static final String GET_AFTER_RETURNING_ADVICE_METHOD_NAME = "aw$getAfterReturningAdvice";
268     public static final String GET_AFTER_RETURNING_ADVICE_METHOD_SIGNATURE = "(I)[Lorg/codehaus/aspectwerkz/intercept/AfterReturningAdvice;";
269     public static final String GET_AFTER_THROWING_ADVICE_METHOD_NAME = "aw$getAfterThrowingAdvice";
270     public static final String GET_AFTER_THROWING_ADVICE_METHOD_SIGNATURE = "(I)[Lorg/codehaus/aspectwerkz/intercept/AfterThrowingAdvice;";
271 
272     public static final int MODIFIER_INVOKEINTERFACE = 0x10000000;
273     public static final int INDEX_NOTAVAILABLE = -1;
274 
275 
276     public static final String STATICINITIALIZATION_SIGNATURE_IMPL_CLASS_NAME = "org/codehaus/aspectwerkz/joinpoint/impl/StaticInitializerSignatureImpl";
277     public static final String STATICINITIALIZATION_SIGNATURE_IMPL_CLASS_SIGNATURE = "Lorg/codehaus/aspectwerkz/joinpoint/impl/StaticInitializerSignatureImpl;";
278     public static final String NEW_STATICINITIALIZATION_SIGNATURE_METHOD_SIGNATURE = "(Ljava/lang/Class;)Lorg/codehaus/aspectwerkz/joinpoint/impl/StaticInitializerSignatureImpl;";
279     public static final String NEW_STATICINITIALIZATION_SIGNATURE_METHOD_NAME = "newStaticInitializationSignature";
280 }