public class ClassProxyContainer extends ClassContainer
advisedFieldsadviceBindings, adviceInterceptors, advisedMethods, annotations, aspects, classMetaData, classMetaDataBindings, clazz, constructionInfos, constructionInterceptors, constructorInfos, constructorInterceptors, constructorMetaData, constructors, defaultMetaData, doesHaveAspects, fieldMetaData, interfaceIntroductions, lazyCollectionLock, loader, manager, methodInfos, methodInterceptors, methodMetaData, name, NULL_ASPECT, perInstanceAspectDefinitions, perInstanceJoinpointAspectDefinitions| Constructor and Description |
|---|
ClassProxyContainer(String name,
AspectManager manager) |
| Modifier and Type | Method and Description |
|---|---|
void |
addPerClassAspect(AspectDefinition def) |
boolean |
chainOverridingForInheritedMethods()
Whether the type of advisor supports matching on pointcut expression, where the method is defined in a superclass only,
while the pointcut expression class matches the subclass.
|
protected void |
createConstructorTables() |
InstanceProxyContainer |
createInstanceProxyContainer() |
protected void |
createMethodMap() |
MethodInfo[] |
getMethodInfos() |
protected Advisor |
getParentAdvisor() |
Object |
getPerClassAspect(AspectDefinition def)
If this is an instance advisor, will check with parent advisor if the aspect
is already registered.
|
void |
initialise(Class<?> proxiedClass) |
addClassMetaData, bindClassMetaData, createFieldTable, createInterceptorChains, initializeClassContainer, initializeClassContainer, initializeMetadata, initializeMethodChain, rebindClassMetaData, rebuildInterceptors, rebuildInterceptorsForAddedBinding, rebuildInterceptorsForRemovedBinding, removeClassMetaData, setChainOverridingForInheritedMethods, setClass, updateInterceptorChainsaddAdviceInterceptor, addInterfaceIntroduction, addPerInstanceAspect, addPerInstanceJoinpointAspect, adjustInfoForAddedBinding, cleanup, createInterceptorChain, deployAnnotationOverride, deployAnnotationOverrides, deployMethodAnnotationOverrides, doDeployAnnotationOverride, dynamicInvoke, finalizeChain, finalizeMethodChain, getAdviceInterceptor, getAllMethods, getAnnotations, getClassLoader, getClassMetaData, getClassMetadataBindings, getClazz, getConstructionInfos, getConstructionInterceptors, getConstructorInfos, getConstructorInterceptors, getConstructorMetaData, getConstructors, getDefaultMetaData, getFieldMetaData, getInterfaceIntroductions, getManager, getMetadata, getMethodInfo, getMethodMetaData, getName, getPerClassAspect, getPerInstanceAspectDefinitions, getPerInstanceJoinpointAspectDefinitions, getPerVMAspect, getSimpleName, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAspects, hasSameConstructorAspectLength, hasSameMethodAspectLength, initAdvisedMethodsMap, initClassMetaDataBindingsList, initializeConstructionChain, initializeConstructorChain, initializeInterfaceIntroductions, initInterfaceIntroductionsList, initPerInstanceAspectDefinitionsSet, initPerInstanceJoinpointAspectDefinitionsMap, lockWriteChain, lockWriteChain, newBindingAdded, newBindingAdded, pointcutResolved, populateInterceptorsFromInfos, removeAdviceBinding, removeAdviceBindings, removeInterfaceIntroduction, removePerClassAspect, removePerInstanceAspect, removePerInstanceJoinpointAspect, resetChain, resetChain, resetChainKeepInterceptors, resetChainKeepInterceptors, resolveAnnotation, resolveAnnotation, resolveAnnotation, resolveAnnotation, resolveAnnotation, resolveAnnotation, resolveConstructionPointcut, resolveConstructorPointcut, resolveMethodPointcut, resolveTypedAnnotation, resolveTypedAnnotation, resolveTypedAnnotation, resolveTypedAnnotation, resolveTypedAnnotation, resolveTypedAnnotation, setManager, setMetadata, unlockWriteChain, unlockWriteChain, updateConstructionPointcutAfterRemove, updateConstructorPointcutAfterRemove, updateFieldPointcutAfterRemove, updateFieldPointcutAfterRemove, updateMethodPointcutAfterRemovepublic ClassProxyContainer(String name, AspectManager manager)
protected void createConstructorTables()
createConstructorTables in class ClassContainerprotected void createMethodMap()
createMethodMap in class ClassContainerpublic InstanceProxyContainer createInstanceProxyContainer()
public void initialise(Class<?> proxiedClass)
protected Advisor getParentAdvisor()
public void addPerClassAspect(AspectDefinition def)
addPerClassAspect in class Advisorpublic Object getPerClassAspect(AspectDefinition def)
getPerClassAspect in class Advisorpublic boolean chainOverridingForInheritedMethods()
Advisor
public class Super {
void method(){}
}
public class Sub etxends Super {
}
and
<bind pointcut="execution(* Super->method())">
<interceptor class="A"/>
</bind>
<bind pointcut="execution(* sub->method())">
<interceptor class="B"/>
</bind>
chainOverridingForInheritedMethods in class ClassContainerAdvisor.chainOverridingForInheritedMethods()public MethodInfo[] getMethodInfos()
Copyright © 2013 JBoss, a division of Red Hat, Inc.. All Rights Reserved.