OSDN Git Service

coding.
authoriga <tosiki.iga@nifty.ne.jp>
Mon, 31 Mar 2014 21:01:33 +0000 (06:01 +0900)
committeriga <tosiki.iga@nifty.ne.jp>
Mon, 31 Mar 2014 21:01:33 +0000 (06:01 +0900)
jcfa/src/jp/igapyon/jcfa/JavaClassFileAnalyzer.java
jcfa/src/jp/igapyon/jcfa/util/JcfaWriteUtil.java [new file with mode: 0644]
jcfa/src/jp/igapyon/jcfa/vo/JcfaComment.java

index 25e9a2b..a997fc2 100644 (file)
@@ -1,13 +1,10 @@
 package jp.igapyon.jcfa;\r
 \r
-import java.io.BufferedWriter;\r
 import java.io.File;\r
-import java.io.FileOutputStream;\r
 import java.io.IOException;\r
-import java.io.OutputStreamWriter;\r
 \r
-import jp.igapyon.jcfa.util.JcfaEclipseUtil;\r
 import jp.igapyon.jcfa.util.JcfaUtil;\r
+import jp.igapyon.jcfa.util.JcfaWriteUtil;\r
 import jp.igapyon.jcfa.vo.JcfaClass;\r
 import jp.igapyon.jcfa.vo.JcfaField;\r
 import jp.igapyon.jcfa.vo.JcfaMethod;\r
@@ -74,7 +71,7 @@ public class JavaClassFileAnalyzer {
                        jcfaUnit.setTargetFile(new File(actualyTargetDir,\r
                                        split[split.length - 1] + ".jcfa"));\r
 \r
-                       writeToFile(jcfaUnit);\r
+                       JcfaWriteUtil.writeToFile(jcfaUnit);\r
                } catch (ClassFormatException e) {\r
                        e.printStackTrace();\r
                } catch (IOException e) {\r
@@ -82,64 +79,6 @@ public class JavaClassFileAnalyzer {
                }\r
        }\r
 \r
-       private void writeToFile(final JcfaUnit jcfaUnit) throws IOException {\r
-               final StringBuffer result = new StringBuffer();\r
-\r
-               for (JcfaClass jcfaClass : jcfaUnit.getClassList()) {\r
-                       writeToBuffer(jcfaClass, result);\r
-               }\r
-\r
-               final BufferedWriter writer = new BufferedWriter(\r
-                               new OutputStreamWriter(new FileOutputStream(\r
-                                               jcfaUnit.getTargetFile())));\r
-               writer.write(JcfaEclipseUtil.formatSource(result.toString()));\r
-               writer.close();\r
-       }\r
-\r
-       private void writeToBuffer(final JcfaClass jcfaClass,\r
-                       final StringBuffer result) {\r
-               if (jcfaClass.isMainClass()) {\r
-                       if (jcfaClass.getName().contains(".")) {\r
-                               result.append(" package "\r
-                                               + jcfaClass.getName().substring(0,\r
-                                                               jcfaClass.getName().lastIndexOf(".")) + ";");\r
-                       }\r
-               }\r
-\r
-               // TODO import\r
-\r
-               result.append(jcfaClass.getAccess());\r
-               result.append(" class " + jcfaClass.getLocalName());\r
-               if (jcfaClass.getExtendsName() != null\r
-                               && jcfaClass.getExtendsName().length() > 0\r
-                               && jcfaClass.getExtendsName().equals("java.lang.Object") == false) {\r
-                       result.append(" extends " + jcfaClass.getExtendsName());\r
-               }\r
-               result.append("{");\r
-\r
-               for (JcfaField jcfaField : jcfaClass.getFieldList()) {\r
-                       writeToBuffer(jcfaField, result);\r
-               }\r
-\r
-               for (JcfaMethod jcfaMethod : jcfaClass.getMethodList()) {\r
-                       writeToBuffer(jcfaMethod, result);\r
-               }\r
-\r
-               result.append("}");\r
-       }\r
-\r
-       private void writeToBuffer(final JcfaField jcfaField,\r
-                       final StringBuffer result) {\r
-               result.append(" " + jcfaField.getAccess() + " " + "String" + " "\r
-                               + jcfaField.getName());\r
-               result.append(";");\r
-       }\r
-\r
-       private void writeToBuffer(final JcfaMethod jcfaMethod,\r
-                       final StringBuffer result) {\r
-\r
-       }\r
-\r
        private void analyzeFields(final JavaClass jc, final JcfaClass jcfaClass) {\r
                final org.apache.bcel.classfile.Field[] fields = jc.getFields();\r
                for (int indexField = 0; indexField < fields.length; indexField++) {\r
diff --git a/jcfa/src/jp/igapyon/jcfa/util/JcfaWriteUtil.java b/jcfa/src/jp/igapyon/jcfa/util/JcfaWriteUtil.java
new file mode 100644 (file)
index 0000000..0bb4a16
--- /dev/null
@@ -0,0 +1,71 @@
+package jp.igapyon.jcfa.util;
+
+import java.io.BufferedWriter;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+
+import jp.igapyon.jcfa.vo.JcfaClass;
+import jp.igapyon.jcfa.vo.JcfaField;
+import jp.igapyon.jcfa.vo.JcfaMethod;
+import jp.igapyon.jcfa.vo.JcfaUnit;
+
+public class JcfaWriteUtil {
+       public static void writeToFile(final JcfaUnit jcfaUnit) throws IOException {
+               final StringBuffer result = new StringBuffer();
+
+               for (JcfaClass jcfaClass : jcfaUnit.getClassList()) {
+                       writeToBuffer(jcfaClass, result);
+               }
+
+               final BufferedWriter writer = new BufferedWriter(
+                               new OutputStreamWriter(new FileOutputStream(
+                                               jcfaUnit.getTargetFile())));
+               writer.write(JcfaEclipseUtil.formatSource(result.toString()));
+               writer.close();
+       }
+
+       public static void writeToBuffer(final JcfaClass jcfaClass,
+                       final StringBuffer result) {
+               if (jcfaClass.isMainClass()) {
+                       if (jcfaClass.getName().contains(".")) {
+                               result.append(" package "
+                                               + jcfaClass.getName().substring(0,
+                                                               jcfaClass.getName().lastIndexOf(".")) + ";");
+                       }
+               }
+
+               // TODO import
+
+               result.append(jcfaClass.getAccess());
+               result.append(" class " + jcfaClass.getLocalName());
+               if (jcfaClass.getExtendsName() != null
+                               && jcfaClass.getExtendsName().length() > 0
+                               && jcfaClass.getExtendsName().equals("java.lang.Object") == false) {
+                       result.append(" extends " + jcfaClass.getExtendsName());
+               }
+               result.append("{");
+
+               for (JcfaField jcfaField : jcfaClass.getFieldList()) {
+                       writeToBuffer(jcfaField, result);
+               }
+
+               for (JcfaMethod jcfaMethod : jcfaClass.getMethodList()) {
+                       writeToBuffer(jcfaMethod, result);
+               }
+
+               result.append("}");
+       }
+
+       public static void writeToBuffer(final JcfaField jcfaField,
+                       final StringBuffer result) {
+               result.append(" " + jcfaField.getAccess() + " " + "String" + " "
+                               + jcfaField.getName());
+               result.append(";");
+       }
+
+       public static void writeToBuffer(final JcfaMethod jcfaMethod,
+                       final StringBuffer result) {
+
+       }
+}
index 2e458ea..0ba6b9e 100644 (file)
@@ -3,7 +3,12 @@ package jp.igapyon.jcfa.vo;
 import java.util.ArrayList;
 import java.util.List;
 
-public class JcfaComment extends JcfaNode {
+/**
+ * Note: JcfaComment can't extends JcfaNode
+ * 
+ * @author tosiki
+ */
+public class JcfaComment {
        protected boolean isJavaDoc = false;
 
        protected List<String> commentList = new ArrayList<String>();