01: /*
02: * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved.
03: */
04: package com.tc.aspectwerkz.hook;
05:
06: /**
07: * Implement to be the java.lang.ClassLoader pre processor. <p/>ProcessStarter calls once the no-arg constructor of the
08: * class implementing this interface and specified with the <code>-Daspectwerkz.classloader.clpreprocessor</code>
09: * option. It uses com.tc.aspectwerkz.hook.impl.ClassLoaderPreProcessorImpl by default, which is a ASM
10: * implementation (since 2004 10 20).
11: *
12: * @author <a href="mailto:alex@gnilux.com">Alexandre Vasseur </a>
13: * @see com.tc.aspectwerkz.hook.ProcessStarter
14: * @see com.tc.aspectwerkz.hook.impl.ClassLoaderPreProcessorImpl
15: */
16: public interface ClassLoaderPreProcessor {
17: /**
18: * instruments the java.lang.ClassLoader bytecode
19: */
20: public byte[] preProcess(byte[] b);
21: }
|