[jboss-cvs] JBossAS SVN: r60945 - projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/aspects.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Feb 27 10:37:05 EST 2007
Author: alesj
Date: 2007-02-27 10:37:05 -0500 (Tue, 27 Feb 2007)
New Revision: 60945
Modified:
projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/aspects/AbstractIntroduction.java
Log:
Introduction helper class - annotation introduction.
Modified: projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/aspects/AbstractIntroduction.java
===================================================================
--- projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/aspects/AbstractIntroduction.java 2007-02-27 15:00:09 UTC (rev 60944)
+++ projects/microcontainer/trunk/aop-mc-int/src/main/org/jboss/aop/microcontainer/aspects/AbstractIntroduction.java 2007-02-27 15:37:05 UTC (rev 60945)
@@ -33,35 +33,42 @@
*
* @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
*/
-public abstract class AbstractIntroduction implements Interceptor
+public abstract class AbstractIntroduction<T extends Annotation> implements Interceptor
{
public String getName()
{
return getClass().getName();
}
- protected abstract Class<? extends Annotation> getBindingAnnotation();
+ protected abstract Class<T> getBindingAnnotation();
protected boolean isBindingInfoPresent(Invocation invocation)
{
return invocation.resolveClassAnnotation(getBindingAnnotation()) != null;
}
+ protected T resolveBindingInfo(Invocation invocation)
+ {
+ Class<T> bindingClass = getBindingAnnotation();
+ Object bindingInfo = invocation.resolveClassAnnotation(bindingClass);
+ return bindingClass.cast(bindingInfo);
+ }
+
protected void onRegistration(Invocation invocation, KernelControllerContext context)
{
- onRegistration(context);
+ onRegistration(context, resolveBindingInfo(invocation));
}
- protected void onRegistration(KernelControllerContext context)
+ protected void onRegistration(KernelControllerContext context, T annotation)
{
}
protected void onUnregistration(Invocation invocation, KernelControllerContext context)
{
- onUnregistration(context);
+ onUnregistration(context, resolveBindingInfo(invocation));
}
- protected void onUnregistration(KernelControllerContext context)
+ protected void onUnregistration(KernelControllerContext context, T annotation)
{
}
More information about the jboss-cvs-commits
mailing list