org.jboss.aop.pointcut
Class ProxyMatcherStrategy

java.lang.Object
  extended by org.jboss.aop.pointcut.MatcherStrategy
      extended by org.jboss.aop.pointcut.ProxyMatcherStrategy

public class ProxyMatcherStrategy
extends MatcherStrategy

Strategy to allow for different handling for the pointcut matchers for different types of advisor This one uses the "default" strategy, used for proxy advisors. The main problem for these is that methods from interface introductions will have the class of the interface rather than the class of the advised class.

Version:
$Revision: 77241 $
Author:
Kabir Khan

Constructor Summary
ProxyMatcherStrategy()
           
 
Method Summary
protected  boolean checkIntroductions(Class<?> clazz, ClassExpression instanceOf, Advisor advisor)
           
 Class<?> getDeclaringClass(Advisor advisor, Method m)
          Interface Introduced methods on the proxy will have the wrong declaring class for the matcher, use the advisor class if it is an interface
 
Methods inherited from class org.jboss.aop.pointcut.MatcherStrategy
getMatcher, subtypeOf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProxyMatcherStrategy

public ProxyMatcherStrategy()
Method Detail

checkIntroductions

protected boolean checkIntroductions(Class<?> clazz,
                                     ClassExpression instanceOf,
                                     Advisor advisor)
Specified by:
checkIntroductions in class MatcherStrategy

getDeclaringClass

public Class<?> getDeclaringClass(Advisor advisor,
                                  Method m)
Interface Introduced methods on the proxy will have the wrong declaring class for the matcher, use the advisor class if it is an interface

Specified by:
getDeclaringClass in class MatcherStrategy


Copyright © 2008 JBoss, a division of Red Hat, Inc.. All Rights Reserved.