net.sf.cglib.core

Interface GeneratorStrategy

Known Implementing Classes:
DefaultGeneratorStrategy, UndeclaredThrowableStrategy

public interface GeneratorStrategy

The GeneratorStrategy is responsible for taking a ClassGenerator and producing a byte array containing the data for the generated Class. By providing your own strategy you may examine or modify the generated class before it is loaded. Typically this will be accomplished by subclassing DefaultGeneratorStrategy and overriding the appropriate protected method.
See Also:
AbstractClassGenerator.setStrategy(GeneratorStrategy)

Method Summary

boolean
equals(Object o)
The GeneratorStrategy in use does not currently, but may in the future, affect the caching of classes generated by AbstractClassGenerator, so this is a reminder that you should correctly implement equals and hashCode to avoid generating too many classes.
byte[]
generate(ClassGenerator cg)
Generate the class.

Method Details

equals

public boolean equals(Object o)
The GeneratorStrategy in use does not currently, but may in the future, affect the caching of classes generated by AbstractClassGenerator, so this is a reminder that you should correctly implement equals and hashCode to avoid generating too many classes.

generate

public byte[] generate(ClassGenerator cg)
            throws Exception
Generate the class.
Parameters:
cg - a class generator on which you can call ClassGenerator.generateClass(ClassVisitor)
Returns:
a byte array containing the bits of a valid Class

Copyright (c) 2001 - Apache Software Foundation