[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