|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IClassEnhancer
Defines the basic behavior that any DIF class enhancer must implement.
Method Summary | |
---|---|
pt.digitalis.utils.bytecode.holders.ClassHolder |
enhance(pt.digitalis.utils.bytecode.holders.ClassHolder clazz)
Enhances a given class. |
void |
processAnnotation(ClassEnhancementContext classEnhancementContext,
pt.digitalis.utils.bytecode.holders.AnnotationHolder annotation,
DEMAnnotationLogic annotationLogic)
Processes a given type-targeted annotation, enhancing the class with bytecode generated accordingly to the annotation. |
void |
processAnnotation(ClassEnhancementContext classEnhancementContext,
pt.digitalis.utils.bytecode.holders.AttributeHolder attribute,
pt.digitalis.utils.bytecode.holders.AnnotationHolder annotation,
DEMAnnotationLogic annotationLogic)
Processes a given field-targeted annotation, enhancing the class with bytecode generated accordingly to the annotation. |
void |
processAnnotation(ClassEnhancementContext classEnhancementContext,
pt.digitalis.utils.bytecode.holders.MethodHolder method,
pt.digitalis.utils.bytecode.holders.AnnotationHolder annotation,
DEMAnnotationLogic annotationLogic)
Processes a given method-targeted annotation, enhancing the class with bytecode generated accordingly to the annotation. |
Method Detail |
---|
pt.digitalis.utils.bytecode.holders.ClassHolder enhance(pt.digitalis.utils.bytecode.holders.ClassHolder clazz) throws pt.digitalis.utils.inspection.exception.ResourceNotFoundException, pt.digitalis.utils.bytecode.exceptions.CodeGenerationException, AnnotationMisuseException, DIFCodeGenerationException
clazz
- the class to enhance.
pt.digitalis.utils.inspection.exception.ResourceNotFoundException
- if the class could not be loaded
pt.digitalis.utils.bytecode.exceptions.CodeGenerationException
- if class could not be enhanced
AnnotationMisuseException
- if an inappropriate annotation use was made
DIFCodeGenerationException
void processAnnotation(ClassEnhancementContext classEnhancementContext, pt.digitalis.utils.bytecode.holders.AnnotationHolder annotation, DEMAnnotationLogic annotationLogic) throws pt.digitalis.utils.inspection.exception.ResourceNotFoundException, pt.digitalis.utils.bytecode.exceptions.CodeGenerationException, DIFCodeGenerationException
classEnhancementContext
- the class enhancement contextannotation
- the annotation used to choose the appropriate code enhancementannotationLogic
- the annotationLogic class implementation
pt.digitalis.utils.inspection.exception.ResourceNotFoundException
- if any need resource can't be found or loaded
pt.digitalis.utils.bytecode.exceptions.CodeGenerationException
- if source code can not be compiled or appended to class
DIFCodeGenerationException
void processAnnotation(ClassEnhancementContext classEnhancementContext, pt.digitalis.utils.bytecode.holders.AttributeHolder attribute, pt.digitalis.utils.bytecode.holders.AnnotationHolder annotation, DEMAnnotationLogic annotationLogic) throws pt.digitalis.utils.inspection.exception.ResourceNotFoundException, pt.digitalis.utils.bytecode.exceptions.CodeGenerationException, DIFCodeGenerationException
classEnhancementContext
- the class enhancement contextattribute
- annotated attributeannotation
- the annotation used to choose the appropriate code enhancementannotationLogic
- the annotationLogic class implementation
pt.digitalis.utils.inspection.exception.ResourceNotFoundException
- if any need resource can't be found or loaded
pt.digitalis.utils.bytecode.exceptions.CodeGenerationException
- if source code can not be compiled or appended to class
DIFCodeGenerationException
void processAnnotation(ClassEnhancementContext classEnhancementContext, pt.digitalis.utils.bytecode.holders.MethodHolder method, pt.digitalis.utils.bytecode.holders.AnnotationHolder annotation, DEMAnnotationLogic annotationLogic) throws pt.digitalis.utils.inspection.exception.ResourceNotFoundException, pt.digitalis.utils.bytecode.exceptions.CodeGenerationException, DIFCodeGenerationException
classEnhancementContext
- the class enhancement contextmethod
- annotated methodannotation
- the annotation used to choose the appropriate code enhancementannotationLogic
- the annotationLogic class implementation
pt.digitalis.utils.inspection.exception.ResourceNotFoundException
- if any need resource can't be found or loaded
pt.digitalis.utils.bytecode.exceptions.CodeGenerationException
- if source code can not be compiled or appended to class
DIFCodeGenerationException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |