01: /* ClassXformer.java */
02: package org.quilt.cl;
03:
04: import org.apache.bcel.generic.ClassGen;
05:
06: /**
07: * Application-specific pre- and post-processors for Quilt classes.
08: * There may be any number of these.
09: *
10: * If pre/post-processors encounter fatal errors, they must issue
11: * a warning message to System.err and either undo or set clazz to null.
12: *
13: * @author < a href="jddixon@users.sourceforge.net">Jim Dixon</a>
14: */
15:
16: public interface ClassXformer {
17:
18: public void setClassTransformer(ClassTransformer ct);
19:
20: /**
21: * Preprocessor applied to the class before looking at methods.
22: * Any such preprocessors will be applied in the order of
23: * the ClassXformer vector.
24: */
25: public void preMethods(ClassGen clazz);
26:
27: /**
28: * Postprocessor applied to the class after looking at methods.
29: * These will be applied in reverse order after completion of
30: * method processing.
31: */
32: public void postMethods(ClassGen clazz);
33:
34: /** Get the preprocessor's report name. */
35: public String getName();
36:
37: /** Set the preprocessor's name for reports. */
38: public void setName(String name);
39: }
|