public class IntroductionInfoSupport extends java.lang.Object implements IntroductionInfo, java.io.Serializable
IntroductionInfo
.
Allows subclasses to conveniently add all interfaces from a given object, and to suppress interfaces that should not be added. Also allows for querying all introduced interfaces.
Modifier and Type | Field and Description |
---|---|
protected java.util.Set<java.lang.Class<?>> |
publishedInterfaces |
Constructor and Description |
---|
IntroductionInfoSupport() |
Modifier and Type | Method and Description |
---|---|
java.lang.Class<?>[] |
getInterfaces()
Return the additional interfaces introduced by this Advisor or Advice.
|
protected void |
implementInterfacesOnObject(java.lang.Object delegate)
Publish all interfaces that the given delegate implements at the proxy level.
|
boolean |
implementsInterface(java.lang.Class<?> ifc)
Check whether the specified interfaces is a published introduction interface.
|
protected boolean |
isMethodOnIntroducedInterface(MethodInvocation mi)
Is this method on an introduced interface?
|
void |
suppressInterface(java.lang.Class<?> ifc)
Suppress the specified interface, which may have been autodetected
due to the delegate implementing it.
|
protected final java.util.Set<java.lang.Class<?>> publishedInterfaces
public void suppressInterface(java.lang.Class<?> ifc)
Does nothing if the interface is not implemented by the delegate.
ifc
- the interface to suppresspublic java.lang.Class<?>[] getInterfaces()
IntroductionInfo
getInterfaces
in interface IntroductionInfo
public boolean implementsInterface(java.lang.Class<?> ifc)
ifc
- the interface to checkprotected void implementInterfacesOnObject(java.lang.Object delegate)
delegate
- the delegate objectprotected final boolean isMethodOnIntroducedInterface(MethodInvocation mi)
mi
- the method invocation