Class ImplementInterfaceCBP
java.lang.Object
org.zeroturnaround.javarebel.integration.support.JavassistClassBytecodeProcessor
org.zeroturnaround.javarebel.integration.support.CacheAwareJavassistClassBytecodeProcessor
org.zeroturnaround.javarebel.integration.generic.ImplementInterfaceCBP
- All Implemented Interfaces:
org.zeroturnaround.javarebel.ClassBytecodeProcessor
Processor making the class implement the given interface only if it is not already doing so.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.zeroturnaround.javarebel.integration.support.CacheAwareJavassistClassBytecodeProcessor
CacheAwareJavassistClassBytecodeProcessor.CachingPolicy -
Method Summary
Modifier and TypeMethodDescriptiongetCachingPolicy(org.zeroturnaround.bundled.javassist.ClassPool cp, ClassLoader cl) Returns the caching policy used by this processor.getInstance(Class<?> clazz) voidprocess(org.zeroturnaround.bundled.javassist.ClassPool cp, ClassLoader cl, org.zeroturnaround.bundled.javassist.CtClass ctClass) Modifies the class to be loaded.Methods inherited from class org.zeroturnaround.javarebel.integration.support.CacheAwareJavassistClassBytecodeProcessor
processMethods inherited from class org.zeroturnaround.javarebel.integration.support.JavassistClassBytecodeProcessor
acceptPathAsClass, acceptPathAsPrimitive, priority, process, setImplicitClassNames, withDuplicatePatchingProtectionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.zeroturnaround.javarebel.ClassBytecodeProcessor
process
-
Method Details
-
getInstance
-
process
public void process(org.zeroturnaround.bundled.javassist.ClassPool cp, ClassLoader cl, org.zeroturnaround.bundled.javassist.CtClass ctClass) throws Exception Description copied from class:JavassistClassBytecodeProcessorModifies the class to be loaded.- Specified by:
processin classJavassistClassBytecodeProcessor- Parameters:
cp- the container ofCtClassobjects.cl- the class loader loading the given class.ctClass- the class representation.- Throws:
Exception
-
getCachingPolicy
protected CacheAwareJavassistClassBytecodeProcessor.CachingPolicy getCachingPolicy(org.zeroturnaround.bundled.javassist.ClassPool cp, ClassLoader cl) Description copied from class:CacheAwareJavassistClassBytecodeProcessorReturns the caching policy used by this processor.If a processor uses a caching policy that isn't equal to
NEVER, then its transformations may be cached between runs. A processor then needs to make sure that itsprocessmethod does not have any side effects.Also, the processing of a keyless processor may only depend on the structure of the processed class. In case of any other dependencies (e.g. the existence or structure of other classes in the class pool, configuration options etc), a
keyshould be used to identify the processing configuration. This method returnsALWAYSin its default implementation.- Overrides:
getCachingPolicyin classCacheAwareJavassistClassBytecodeProcessor
-