public class ClassProxyContainer extends ClassContainer
advisedFields
adviceBindings, 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, updateInterceptorChains
addAdviceInterceptor, 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, updateMethodPointcutAfterRemove
public ClassProxyContainer(String name, AspectManager manager)
protected void createConstructorTables()
createConstructorTables
in class ClassContainer
protected void createMethodMap()
createMethodMap
in class ClassContainer
public InstanceProxyContainer createInstanceProxyContainer()
public void initialise(Class<?> proxiedClass)
protected Advisor getParentAdvisor()
public void addPerClassAspect(AspectDefinition def)
addPerClassAspect
in class Advisor
public Object getPerClassAspect(AspectDefinition def)
getPerClassAspect
in class Advisor
public 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 ClassContainer
Advisor.chainOverridingForInheritedMethods()
public MethodInfo[] getMethodInfos()
Copyright © 2013 JBoss, a division of Red Hat, Inc.. All Rights Reserved.