[jboss-cvs] JBossAS SVN: r68643 - projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/pointcut.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sat Jan 5 17:44:35 EST 2008
Author: flavia.rainone at jboss.com
Date: 2008-01-05 17:44:35 -0500 (Sat, 05 Jan 2008)
New Revision: 68643
Modified:
projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/pointcut/Util.java
Log:
Refactored code.
Modified: projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/pointcut/Util.java
===================================================================
--- projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/pointcut/Util.java 2008-01-05 22:12:54 UTC (rev 68642)
+++ projects/aop/branches/joinpoint_graph/aop/src/main/org/jboss/aop/pointcut/Util.java 2008-01-05 22:44:35 UTC (rev 68643)
@@ -570,32 +570,35 @@
public static boolean matchModifiers(ASTAttribute need, int have)
{
- if (Modifier.isAbstract(need.attribute) && need.not) return !Modifier.isAbstract(have);
- if (Modifier.isAbstract(need.attribute) && !need.not) return Modifier.isAbstract(have);
- if (Modifier.isFinal(need.attribute) && need.not) return !Modifier.isFinal(have);
- if (Modifier.isFinal(need.attribute) && !need.not) return Modifier.isFinal(have);
- if (Modifier.isInterface(need.attribute) && need.not) return !Modifier.isInterface(have);
- if (Modifier.isInterface(need.attribute) && !need.not) return Modifier.isInterface(have);
- if (Modifier.isNative(need.attribute) && need.not) return !Modifier.isNative(have);
- if (Modifier.isNative(need.attribute) && !need.not) return Modifier.isNative(have);
- if (Modifier.isPrivate(need.attribute) && need.not) return !Modifier.isPrivate(have);
- if (Modifier.isPrivate(need.attribute) && !need.not) return Modifier.isPrivate(have);
- if (Modifier.isProtected(need.attribute) && need.not) return !Modifier.isProtected(have);
- if (Modifier.isProtected(need.attribute) && !need.not) return Modifier.isProtected(have);
- if (Modifier.isPublic(need.attribute) && need.not) return !Modifier.isPublic(have);
- if (Modifier.isPublic(need.attribute) && !need.not) return Modifier.isPublic(have);
- if (Modifier.isStatic(need.attribute) && need.not) return !Modifier.isStatic(have);
- if (Modifier.isStatic(need.attribute) && !need.not) return Modifier.isStatic(have);
- if (Modifier.isStrict(need.attribute) && need.not) return !Modifier.isStrict(have);
- if (Modifier.isStrict(need.attribute) && !need.not) return Modifier.isStrict(have);
- if (Modifier.isSynchronized(need.attribute) && need.not) return !Modifier.isSynchronized(have);
- if (Modifier.isSynchronized(need.attribute) && !need.not) return Modifier.isSynchronized(have);
- if (Modifier.isTransient(need.attribute) && need.not) return !Modifier.isTransient(have);
- if (Modifier.isTransient(need.attribute) && !need.not) return Modifier.isTransient(have);
- if (Modifier.isVolatile(need.attribute) && need.not) return !Modifier.isVolatile(have);
- if (Modifier.isVolatile(need.attribute) && !need.not) return Modifier.isVolatile(have);
-
- return true;
+ switch (need.attribute)
+ {
+ case Modifier.ABSTRACT:
+ return Modifier.isAbstract(have) != need.not;
+ case Modifier.FINAL:
+ return Modifier.isFinal(have) != need.not;
+ case Modifier.INTERFACE:
+ return Modifier.isInterface(have) != need.not;
+ case Modifier.NATIVE:
+ return Modifier.isNative(have) != need.not;
+ case Modifier.PRIVATE:
+ return Modifier.isPrivate(have) != need.not;
+ case Modifier.PROTECTED:
+ return Modifier.isProtected(have) != need.not;
+ case Modifier.PUBLIC:
+ return Modifier.isPublic(have) != need.not;
+ case Modifier.STATIC:
+ return Modifier.isStatic(have) != need.not;
+ case Modifier.STRICT:
+ return Modifier.isStrict(have) != need.not;
+ case Modifier.SYNCHRONIZED:
+ return Modifier.isSynchronized(have) != need.not;
+ case Modifier.TRANSIENT:
+ return Modifier.isTransient(have) != need.not;
+ case Modifier.VOLATILE:
+ return Modifier.isVolatile(have) != need.not;
+ default:
+ throw new RuntimeException("Unexpected modifier value: " + need.attribute);
+ }
}
/**
More information about the jboss-cvs-commits
mailing list