OSDN Git Service

change to independ from Opcodes class in asm package
authortama3 <tama3@acee48c3-7b26-0410-bdac-b3d0e5314bbc>
Mon, 1 Dec 2008 04:37:18 +0000 (04:37 +0000)
committertama3 <tama3@acee48c3-7b26-0410-bdac-b3d0e5314bbc>
Mon, 1 Dec 2008 04:37:18 +0000 (04:37 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/stigmata/trunk@325 acee48c3-7b26-0410-bdac-b3d0e5314bbc

src/main/java/jp/sourceforge/stigmata/utils/WellknownClassManager.java

index ae99367..16011fe 100644 (file)
@@ -11,8 +11,6 @@ import java.util.List;
 import jp.sourceforge.stigmata.utils.WellknownClassJudgeRule.MatchPartType;
 import jp.sourceforge.stigmata.utils.WellknownClassJudgeRule.MatchType;
 
-import org.objectweb.asm.Opcodes;
-
 /**
  * Managing wellknown class checking rule.
  * 
@@ -23,6 +21,29 @@ public class WellknownClassManager implements Iterable<WellknownClassJudgeRule>{
     private List<WellknownClassJudgeRule> rules = new ArrayList<WellknownClassJudgeRule>();
 
     /**
+     * public field/method flag defined in JVM specification.
+     */
+    private static final int OPCODE_ACC_PUBLIC = 1;
+    /**
+     * private field/method flag defined in JVM specification.
+     */
+    @SuppressWarnings("unused")
+    private static final int OPCODE_ACC_PRIVATE = 2;
+    /**
+     * protected field/method flag defined in JVM specification.
+     */
+    @SuppressWarnings("unused")
+    private static final int OPCODE_ACC_PROTECTED = 4;
+    /**
+     * static field/method flag defined in JVM specification.
+     */
+    private static final int OPCODE_ACC_STATIC = 8;
+    /**
+     * final field/method flag defined in JVM specification.
+     */
+    private static final int OPCODE_ACC_FINAL = 16;
+
+    /**
      * default constructor.
      */
     public WellknownClassManager(){
@@ -115,14 +136,14 @@ public class WellknownClassManager implements Iterable<WellknownClassJudgeRule>{
     private boolean checkSystemMethod(int access, String methodName, String signature){
         if(methodName.equals("main")){
             return signature.equals("([Ljava/lang/String;)V")
-                && checkAccess(access, Opcodes.ACC_PUBLIC);
+                && checkAccess(access, OPCODE_ACC_PUBLIC);
         }
         else if(methodName.equals("<clinit>")){
             return signature.equals("()V")
-                && checkAccess(access, Opcodes.ACC_STATIC);
+                && checkAccess(access, OPCODE_ACC_STATIC);
         }
         else if(methodName.equals("<init>")){
-            return !checkAccess(access, Opcodes.ACC_STATIC);
+            return !checkAccess(access, OPCODE_ACC_STATIC);
         }
         return false;
     }
@@ -135,8 +156,8 @@ public class WellknownClassManager implements Iterable<WellknownClassJudgeRule>{
      */
     private boolean checkSystemField(int access, String fieldName, String signature){
         if(fieldName.equals("serialVersionUID")){
-            return checkAccess(access, Opcodes.ACC_STATIC) &&
-                checkAccess(access, Opcodes.ACC_FINAL) &&
+            return checkAccess(access, OPCODE_ACC_STATIC) &&
+                checkAccess(access, OPCODE_ACC_FINAL) &&
                 signature.equals("J");
         }