diff --git a/src/main/java/com/hy/java/uct/cdtocode/CDToCodeTracer.java b/src/main/java/com/hy/java/uct/cdtocode/CDToCodeTracer.java index 88268c84ba044c570d4d72ea3b6acb40d6477fef..3231b8ed9c0f758b1e2a2f0313c9d6c653aa0504 100644 --- a/src/main/java/com/hy/java/uct/cdtocode/CDToCodeTracer.java +++ b/src/main/java/com/hy/java/uct/cdtocode/CDToCodeTracer.java @@ -52,7 +52,15 @@ public class CDToCodeTracer { /* * Hadoop MapReduce */ - Map classes_in_CD = CDReader.read(cd_dir + "cd-Hadoop MapReduce.txt"); + // Map classes_in_CD = CDReader.read(cd_dir + "cd-Hadoop MapReduce.txt"); + /* + * Jetty + */ + // Map classes_in_CD = CDReader.read(cd_dir + "cd-eclipse_jetty.txt"); + /* + * ASM + */ + Map classes_in_CD = CDReader.read(cd_dir + "cd-java_asm.txt"); // 检查结果,可注释掉 // CDReader.check(classes_in_CD); /* @@ -88,24 +96,27 @@ public class CDToCodeTracer { /* * Hadoop MapReduce */ - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\A BIG DATA PROCESSING FRAMEWORK BASED ON MAPREDUCE WITH APPLICATION TO INTERNET OF THINGS.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Apache Hadoop Architecture – HDFS, YARN & MapReduce.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Big Data Analysis Challenges and Solutions.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Big Data Management on Wireless Sensor Networks.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Hadoop - MapReduce.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Hadoop Architecture in Detail – HDFS, Yarn & MapReduce.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Hadoop MapReduce- Java-based Processing Framework for Big Data.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce – Components.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Architecture1.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Architecture2.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Architecture3.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Tutorial.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Working and Components.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\mapreduce_hadoop2.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Understanding MapReduce in Hadoop.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\What are the components of MapReduce.txt"); - doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\What Is MapReduce Architecture An Important Overview For 2021.txt"); + /* + * doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\A BIG DATA PROCESSING FRAMEWORK BASED ON MAPREDUCE WITH APPLICATION TO INTERNET OF THINGS.txt"); doc_dir_ls.add(doc_dir + + * "Hadoop MapReduce\\Apache Hadoop Architecture – HDFS, YARN & MapReduce.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Big Data Analysis Challenges and Solutions.txt"); doc_dir_ls.add(doc_dir + + * "Hadoop MapReduce\\Big Data Management on Wireless Sensor Networks.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Hadoop - MapReduce.txt"); doc_dir_ls.add(doc_dir + + * "Hadoop MapReduce\\Hadoop Architecture in Detail – HDFS, Yarn & MapReduce.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Hadoop MapReduce- Java-based Processing Framework for Big Data.txt"); + * doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce – Components.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Architecture1.txt"); doc_dir_ls.add(doc_dir + + * "Hadoop MapReduce\\MapReduce Architecture2.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Architecture3.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Tutorial.txt"); + * doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce Working and Components.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\MapReduce.txt"); doc_dir_ls.add(doc_dir + + * "Hadoop MapReduce\\mapreduce_hadoop2.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\Understanding MapReduce in Hadoop.txt"); doc_dir_ls.add(doc_dir + + * "Hadoop MapReduce\\What are the components of MapReduce.txt"); doc_dir_ls.add(doc_dir + "Hadoop MapReduce\\What Is MapReduce Architecture An Important Overview For 2021.txt"); + */ + /* + * Jetty + */ + /* + * doc_dir_ls.add(doc_dir + "Jetty\\basic-architecture.txt"); doc_dir_ls.add(doc_dir + "Jetty\\Jetty10 Operations Guide _ The Eclipse Foundation.txt"); + */ + /* + * ASM + */ + doc_dir_ls.add(doc_dir + "ASM\\asm.txt"); // 实际使用的Map,保存每份文档地址及其内容 Map> dir_sentences_map = DocReader.readDocs(doc_dir_ls); /* @@ -116,13 +127,17 @@ public class CDToCodeTracer { // 记得改这里的路径 // Map classFullName_javaFileDir_map = CodeReader.read(code_dir + "code path-fm"); // Map classFullName_javaFileDir_map = CodeReader.read(code_dir + "code path-hdfs"); - Map classFullName_javaFileDir_map = CodeReader.read(code_dir + "code path-mr"); + // Map classFullName_javaFileDir_map = CodeReader.read(code_dir + "code path-mr"); + // Map classFullName_javaFileDir_map = CodeReader.read(code_dir + "code path-jetty"); + Map classFullName_javaFileDir_map = CodeReader.read(code_dir + "code path-asm"); // 检查结果,可注释掉 // CodeReader.check(classFullName_javaFileDir_map); // 针对每个图中的类名,如果代码中有相似的包名,则将包下所有相似的类(字符串包含至少一个关键词即可)都重点标记。此脚本为一次性,使用后删除即可 // Set packs = CodeReader.findPcks(code_dir + "code path-fm"); // Set packs = CodeReader.findPcks(code_dir + "code path-hdfs"); // Set packs = CodeReader.findPcks(code_dir + "code path-mr"); + // Set packs = CodeReader.findPcks(code_dir + "code path-jetty"); + // Set packs = CodeReader.findPcks(code_dir + "code path-asm"); /* * 4、分析文档信息。实际相当于增加类图中的UMLclass、类本身的内容、类之间关系 * @@ -154,7 +169,15 @@ public class CDToCodeTracer { /* * Hadoop MapReduce */ - CodeRelationMapper.save(mapped_classes, res_dir + "Hadoop MapReduce-NBAttract.xls"); + // CodeRelationMapper.save(mapped_classes, res_dir + "Hadoop MapReduce-NBAttract.xls"); + /* + * Jetty + */ + // CodeRelationMapper.save(mapped_classes, res_dir + "Jetty-nolog.xls"); + /* + * ASM + */ + CodeRelationMapper.save(mapped_classes, res_dir + "ASM-nolog.xls"); // 检查结果,可注释掉 // CodeRelationMapper.check(res_dir + "Apache OODT File Manager.xls"); } diff --git a/src/main/java/com/hy/java/uct/cdtocode/mapper/CodeRelationMapper.java b/src/main/java/com/hy/java/uct/cdtocode/mapper/CodeRelationMapper.java index 03c0173d35217002899397c7507e81e583b36ab6..b78f6054a2922cce382541d0bd5617e1e0501ec8 100644 --- a/src/main/java/com/hy/java/uct/cdtocode/mapper/CodeRelationMapper.java +++ b/src/main/java/com/hy/java/uct/cdtocode/mapper/CodeRelationMapper.java @@ -43,15 +43,15 @@ import jxl.write.biff.RowsExceededException; public class CodeRelationMapper { // 文档实体与代码的相似度阈值。小项目0.6左右,大项目0.75左右 - private static final double sim_threshold = 0.6; + private static final double sim_threshold = 0.5; // 同一包下文档实体与代码的相似度阈值。小项目0.25左右,大项目0.65左右 - private static final double sim_p_threshold = 0.25; + private static final double sim_p_threshold = 0.2; // 包名相似度阈值。小项目0.85左右,大项目1.0左右 - private static final double sim_pck_threshold = 0.85; + private static final double sim_pck_threshold = 0.5; // 文档实体平均追踪概率阈值。小项目0.35左右,大项目0.75左右 - private static final double ave_threshold = 0.35; + private static final double ave_threshold = 0.2; // 类图最终追踪概率阈值。小项目0.55左右,大项目0.8左右 - private static final double pre_threshold = 0.55; + private static final double pre_threshold = 0.3; /** * 对扩展后的模型与代码进行匹配 diff --git a/src/main/java/com/hy/java/uct/cdtocode/mapper/DocAnalyzer.java b/src/main/java/com/hy/java/uct/cdtocode/mapper/DocAnalyzer.java index 583d6f1f9cf02dfd22095e23f0326bcfb9dc67a8..6101752daeeff358364a8b218835a5acd2757e84 100644 --- a/src/main/java/com/hy/java/uct/cdtocode/mapper/DocAnalyzer.java +++ b/src/main/java/com/hy/java/uct/cdtocode/mapper/DocAnalyzer.java @@ -129,22 +129,24 @@ public class DocAnalyzer { // 对每份文档,一句句的去查找 for (String doc_dir : docDir_set) { List sentences = dir_sentences_map.get(doc_dir); - for (String sentence : sentences) { - // 对每句话,一个词一个词的去查找 - String[] words = sentence.split(" "); - for (String word : words) { - // 首先这得是个符合Java命名规范的词 - if (word_obeyRules(word)) { - // 如果找到了相似(可以相同)的词,则存在Cls_img.mappedEnt_ls中 - if (word.toLowerCase().contains(class_short_name.toLowerCase())) { - // 注意不要与第一部分的相似词重复 - if (!Cls_img.mappedEnt_names.contains(word)) { - Entity ent = new Entity(); - ent.parent_class = Cls_img; - ent.name = word; - ent.sim_ClsImg_EntDoc = sim_ClsImg_EntDoc(class_short_name, word); - Cls_img.mappedEnt_ls.add(ent); - Cls_img.mappedEnt_names.add(ent.name); + if (sentences != null) { + for (String sentence : sentences) { + // 对每句话,一个词一个词的去查找 + String[] words = sentence.split(" "); + for (String word : words) { + // 首先这得是个符合Java命名规范的词 + if (word_obeyRules(word)) { + // 如果找到了相似(可以相同)的词,则存在Cls_img.mappedEnt_ls中 + if (word.toLowerCase().contains(class_short_name.toLowerCase())) { + // 注意不要与第一部分的相似词重复 + if (!Cls_img.mappedEnt_names.contains(word)) { + Entity ent = new Entity(); + ent.parent_class = Cls_img; + ent.name = word; + ent.sim_ClsImg_EntDoc = sim_ClsImg_EntDoc(class_short_name, word); + Cls_img.mappedEnt_ls.add(ent); + Cls_img.mappedEnt_names.add(ent.name); + } } } } @@ -163,10 +165,12 @@ public class DocAnalyzer { // 对每个Ent_doc,去所有文档中找它出现的次数。只要在文档中至少出现过一次,就将Ent_doc.F_N加一 for (String doc_dir : docDir_set) { List sentences = dir_sentences_map.get(doc_dir); - for (String sentence : sentences) { - if (sentence.contains(Ent_doc.name)) { - Ent_doc.F_N++; - break; + if (sentences != null) { + for (String sentence : sentences) { + if (sentence.contains(Ent_doc.name)) { + Ent_doc.F_N++; + break; + } } } } diff --git a/src/main/java/com/hy/java/uct/cdtocode/reader/CDReader.java b/src/main/java/com/hy/java/uct/cdtocode/reader/CDReader.java index 50da51674af914333b12685c0053fb2081b8ef68..10af5a0e5375b95a8b8108613334e6ea82b8f36b 100644 --- a/src/main/java/com/hy/java/uct/cdtocode/reader/CDReader.java +++ b/src/main/java/com/hy/java/uct/cdtocode/reader/CDReader.java @@ -31,10 +31,12 @@ public class CDReader { UML_class.setAttrisStr(class_info_strs[1]); } // 方法 - if (class_info_strs[2].length() > 0) { - UML_class.setMethodsStr(class_info_strs[2].substring(0, class_info_strs[2].length() - 1)); - } else { - UML_class.setMethodsStr(class_info_strs[2]); + if (class_info_strs.length > 2) { + if (class_info_strs[2].length() > 0) { + UML_class.setMethodsStr(class_info_strs[2].substring(0, class_info_strs[2].length() - 1)); + } else { + UML_class.setMethodsStr(class_info_strs[2]); + } } result.put(UML_class.getTitle(), UML_class); } diff --git a/src/main/java/com/hy/java/uct/cdtocode/reader/CodeReader.java b/src/main/java/com/hy/java/uct/cdtocode/reader/CodeReader.java index 2cf143c21968e564381da145efa20e3ffc836326..fca77ecd05b8e41458a0c72a35addf9148858b42 100644 --- a/src/main/java/com/hy/java/uct/cdtocode/reader/CodeReader.java +++ b/src/main/java/com/hy/java/uct/cdtocode/reader/CodeReader.java @@ -38,7 +38,7 @@ public class CodeReader { if (code_files_root.children == null) { if (code_files_root.path.endsWith(".java")) { // 过滤\src\test\下的文件 - if (!code_files_root.path.contains("\\src\\test\\")) { + if (!code_files_root.path.contains("\\src\\test\\") && !code_files_root.path.contains("module-info")) { // 这里put的key是类全称(包+类名) try { CompilationUnit cu = StaticJavaParser.parse(new File(code_files_root.path)); diff --git a/src/main/resources/cdtocode/ASM-NBAttract.xls b/src/main/resources/cdtocode/ASM-NBAttract.xls new file mode 100644 index 0000000000000000000000000000000000000000..c4fd005e2eecc86ad1c1a058cb454d4345cc59f6 Binary files /dev/null and b/src/main/resources/cdtocode/ASM-NBAttract.xls differ diff --git a/src/main/resources/cdtocode/ASM-nodoc.xls b/src/main/resources/cdtocode/ASM-nodoc.xls new file mode 100644 index 0000000000000000000000000000000000000000..860474aa6d196049be70aea3f1504c83c0988720 Binary files /dev/null and b/src/main/resources/cdtocode/ASM-nodoc.xls differ diff --git a/src/main/resources/cdtocode/ASM-nolog.xls b/src/main/resources/cdtocode/ASM-nolog.xls new file mode 100644 index 0000000000000000000000000000000000000000..a584da2f5d77b072d645f3c86d764348b60fd879 Binary files /dev/null and b/src/main/resources/cdtocode/ASM-nolog.xls differ diff --git a/src/main/resources/cdtocode/ASM.xls b/src/main/resources/cdtocode/ASM.xls new file mode 100644 index 0000000000000000000000000000000000000000..ac41a9b2d321ae34ecda1683ed446ee56bcd9b8e Binary files /dev/null and b/src/main/resources/cdtocode/ASM.xls differ diff --git a/src/main/resources/cdtocode/Jetty-NBAttract.xls b/src/main/resources/cdtocode/Jetty-NBAttract.xls new file mode 100644 index 0000000000000000000000000000000000000000..68a51d19f1ae928c77ee46ef17dc030cbfdfca9b Binary files /dev/null and b/src/main/resources/cdtocode/Jetty-NBAttract.xls differ diff --git a/src/main/resources/cdtocode/Jetty-nodoc.xls b/src/main/resources/cdtocode/Jetty-nodoc.xls new file mode 100644 index 0000000000000000000000000000000000000000..7768c74808ccd253b5c5d6bc9cf2a07202171ac6 Binary files /dev/null and b/src/main/resources/cdtocode/Jetty-nodoc.xls differ diff --git a/src/main/resources/cdtocode/Jetty-nolog.xls b/src/main/resources/cdtocode/Jetty-nolog.xls new file mode 100644 index 0000000000000000000000000000000000000000..83afe86fdff06db17d5c67fc56ffdf965514efd7 Binary files /dev/null and b/src/main/resources/cdtocode/Jetty-nolog.xls differ diff --git a/src/main/resources/cdtocode/Jetty.xls b/src/main/resources/cdtocode/Jetty.xls new file mode 100644 index 0000000000000000000000000000000000000000..0dfb3684b709cbae799426784d3cc062dcd4b702 Binary files /dev/null and b/src/main/resources/cdtocode/Jetty.xls differ diff --git a/src/main/resources/cdtocode/cd/cd-java_asm.png b/src/main/resources/cdtocode/cd/cd-java_asm.png new file mode 100644 index 0000000000000000000000000000000000000000..3e5046dc937932b20a509ae3667d43d7b7a99c29 Binary files /dev/null and b/src/main/resources/cdtocode/cd/cd-java_asm.png differ diff --git a/src/main/resources/cdtocode/cd/cd-java_asm.txt b/src/main/resources/cdtocode/cd/cd-java_asm.txt new file mode 100644 index 0000000000000000000000000000000000000000..2c75374e888169dd5cc20a713c24811467c408b6 --- /dev/null +++ b/src/main/resources/cdtocode/cd/cd-java_asm.txt @@ -0,0 +1,260 @@ +(611,446)Context +@attrivutePrototypes +parsingOptions +charBuffer +currentMethodAccessFlags +currentMethodName +currentMethodDescriptor +currentMethodLabels +currentTypeAnnotationTarget +currentTypeAnnotationTargetPath +currentLocalVariableAnnotationRangeStarts +currentLocalVariableAnnotationRangeEnds +currentLocalVariableAnnotationRangeIndices +currentFrameOffset +currentFrameType +currentFrameLocalCount +currentFrameLocalCountDelta +currentFrameTypes +currentFrameStackCount +currentFrameStackTypes +@@@#(165,446)ClassWriter +@version +accessFlags +thisClass +superClass +interfaceCount +interfaces +numberOfInnerClasses +innerClasses +enclosingClassIndex +signatureIndex +sourceFileIndex +debugExtension +nestHostClassIndex +numberOfNestMemberClasses +nestMemberClasses +compute +@@ClassWriter +%MethodWriter +%依赖¥ClassWriter +%Attribute +%依赖¥ClassWriter +%FieldWriter +%依赖¥ClassWriter +%AnnotationWriter +%依赖¥ClassWriter +%ModuleWriter +%依赖¥ClassWriter +%SymbolTable +%依赖¥@SymbolTable +%ClassWriter +%依赖¥#(366,303)ClassReader +@b +cpInfoOffsets +cpInfoValues +bootstrapMethodOffsets +maxStringLength +header@@@SymbolTable +%ClassReader +%依赖¥#(167,204)ModuleWriter +@moduleNameIndex +moduleFlags +moduleVersionIndex +requiresCount +requires +exportsCount +exports +opensCount +opens +usesCount +usesIndex +providesCount +provides +packageCount +packageIndex +mainClassIndex +@@ModuleWriter +%SymbolTable +%依赖¥@ClassWriter +%ModuleWriter +%依赖¥#(616,205)Attribute +@type +content@@@ClassWriter +%Attribute +%依赖¥FieldWriter +%Attribute +%依赖¥MethodWriter +%Attribute +%依赖¥#(470,204)FieldWriter +@accessFlags +nameIndex +descriptorIndex +signatureIndex +constantValueIndex +@@FieldWriter +%Attribute +%依赖¥FieldWriter +%AnnotationWriter +%依赖¥FieldWriter +%SymbolTable +%依赖¥@ClassWriter +%FieldWriter +%依赖¥#(110,19)AnnotationWriter +@useNamedValues +annotation +numElementValuePairsOffset +numElementValuePairs +@@AnnotationWriter +%SymbolTable +%依赖¥@ClassWriter +%AnnotationWriter +%依赖¥FieldWriter +%AnnotationWriter +%依赖¥MethodWriter +%AnnotationWriter +%依赖¥#(16,19)SymbolTable +@majorVersion +className +entryCount +constantPoolCount +constantPool +bootstrapMethodCount +bootstrapMethods +typeCount +@@SymbolTable +%ClassWriter +%依赖¥SymbolTable +%ClassReader +%依赖¥SymbolTable +%SymbolTableEntry +%依赖¥@ClassWriter +%SymbolTable +%依赖¥ModuleWriter +%SymbolTable +%依赖¥FieldWriter +%SymbolTable +%依赖¥AnnotationWriter +%SymbolTable +%依赖¥MethodWriter +%SymbolTable +%依赖¥#(394,17)MethodWriter +@accessFlags +nameIndex +descriptorIndex +descriptor +maxStack +maxLocals +code +lineNumberTableLength +lineNumberTable +localVariableTableLengh +localVariableTable +localVariableTypeTableLength +localVariableTypeTable +stackMapTableNumberOfEntries +stackMapTableEntries +numberOfExceptions +exceptionIndexTable +signatureIndex +visibleAnnotableParameterCount +invisibleAnnotableParameterCount +defaultvalue +parametersCount +parameters +compute +relativeStackSize +maxRelativeStackSize +currentLocals +previousFrameOffset +previousFrame +hasSubroutines +hasAsmInstructions +lastBytecodeOffset +sourceOffset +sourceLength +@@MethodWriter +%Attribute +%依赖¥MethodWriter +%Handler +%依赖¥MethodWriter +%Label +%依赖¥MethodWriter +%AnnotationWriter +%依赖¥MethodWriter +%SymbolTable +%依赖¥@ClassWriter +%MethodWriter +%依赖¥#(394,17)Symbol +@index +tag +owner +name +value +data +info +@@@SymbolTableEntry +%Symbol +%继承¥#(394,17)SymbolTableEntry +@hashCode +@@SymbolTableEntry +%Symbol +%继承¥@SymbolTable +%SymbolTableEntry +%依赖¥#(394,17)Handler +@catchType +catchTypeDescriptor +@@Handler +%Label +%依赖¥@MethodWriter +%Handler +%依赖¥#(394,17)Label +@info +flags +lineNumber +otherLineNumbers +bytecodeOffset +forwardReferences +inputStackSize +outputStackSize +outputStackMax +subroutineId +@@Label +%Edge +%依赖¥Label +%Frame +%依赖¥@Handler +%Label +%依赖¥MethodWriter +%Label +%依赖¥Edge +%Label +%依赖¥Frame +%Label +%依赖¥#(394,17)Edge +@info +@@Edge +%Label +%依赖¥@Label +%Edge +%依赖¥#(394,17)Frame +@inputLocals +inputStack +outputLocals +outputStack +outputStackStart +outputStackTop +initializationCount +initializations +@@Frame +%Label +%依赖¥@Label +%Frame +%依赖¥CurrentFrame +%Frame +%继承¥#(394,17)CurrentFrame +@@@CurrentFrame +%Frame +%继承¥@#(394,17)ByteVector +@data +length@@@# \ No newline at end of file diff --git a/src/main/resources/cdtocode/code/code path-asm b/src/main/resources/cdtocode/code/code path-asm new file mode 100644 index 0000000000000000000000000000000000000000..0bfadc5fac69d8d821e6805123295ce4366d2748 --- /dev/null +++ b/src/main/resources/cdtocode/code/code path-asm @@ -0,0 +1 @@ +D:\eclipse-committers\asm-master \ No newline at end of file diff --git a/src/main/resources/cdtocode/code/code path-jetty b/src/main/resources/cdtocode/code/code path-jetty new file mode 100644 index 0000000000000000000000000000000000000000..39b9e7642207e8030f4c58804e8b12e7cecf1e07 --- /dev/null +++ b/src/main/resources/cdtocode/code/code path-jetty @@ -0,0 +1 @@ +D:\eclipse-committers\jetty.project-jetty-9.4.41.v20210516 \ No newline at end of file diff --git a/src/main/resources/cdtocode/doc/ASM/asm-relation.txt b/src/main/resources/cdtocode/doc/ASM/asm-relation.txt new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/main/resources/cdtocode/doc/ASM/asm-simEnts.txt b/src/main/resources/cdtocode/doc/ASM/asm-simEnts.txt new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/main/resources/cdtocode/doc/ASM/asm-ziyan.txt b/src/main/resources/cdtocode/doc/ASM/asm-ziyan.txt new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/main/resources/cdtocode/doc/ASM/asm.txt b/src/main/resources/cdtocode/doc/ASM/asm.txt new file mode 100644 index 0000000000000000000000000000000000000000..9370171d8bad934569c69fadefac5b20ff7e0955 --- /dev/null +++ b/src/main/resources/cdtocode/doc/ASM/asm.txt @@ -0,0 +1,27 @@ + +ASM + +Home +Documentation +User guide +Javadoc +FAQ +Developer guide +About +License +Publications +Versions +ASM is an all purpose Java bytecode manipulation and analysis framework. It can be used to modify existing classes or to dynamically generate classes, directly in binary form. ASM provides some common bytecode transformations and analysis algorithms from which custom complex transformations and code analysis tools can be built. ASM offers similar functionality as other Java bytecode frameworks, but is focused on performance. Because it was designed and implemented to be as small and as fast as possible, it is well suited for use in dynamic systems (but can of course be used in a static way too, e.g. in compilers). + +ASM is used in many projects, including: + +the OpenJDK, to generate the lambda call sites, and also in the Nashorn compiler, +the Groovy compiler and the Kotlin compiler, +Cobertura and Jacoco, to instrument classes in order to measure code coverage, +Byte Buddy, to dynamically generate classes, itself used in other projects such as Mockito (to generate mock classes), +Gradle, to generate some classes at runtime. +Download +ASM can be downloaded from the OW2 Maven repository (which provides releases and snapshots), or from the Maven Central repository (releases only). Artifacts are signed with the public key in KEY.txt. The source code is hosted on Gitlab. + +Recent news +2 October 2022: release of ASM 9.4 \ No newline at end of file diff --git a/src/main/resources/cdtocode/doc/Apache OODT File Manager/Jetty10 Operations Guide _ The Eclipse Foundation-relation.txt b/src/main/resources/cdtocode/doc/Apache OODT File Manager/Jetty10 Operations Guide _ The Eclipse Foundation-relation.txt new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/main/resources/cdtocode/doc/jetty/Jetty10 Operations Guide _ The Eclipse Foundation-relation.txt b/src/main/resources/cdtocode/doc/Jetty/Jetty10 Operations Guide _ The Eclipse Foundation-relation.txt similarity index 100% rename from src/main/resources/cdtocode/doc/jetty/Jetty10 Operations Guide _ The Eclipse Foundation-relation.txt rename to src/main/resources/cdtocode/doc/Jetty/Jetty10 Operations Guide _ The Eclipse Foundation-relation.txt diff --git a/src/main/resources/cdtocode/doc/jetty/Jetty10 Operations Guide _ The Eclipse Foundation-simEnts.txt b/src/main/resources/cdtocode/doc/Jetty/Jetty10 Operations Guide _ The Eclipse Foundation-simEnts.txt similarity index 100% rename from src/main/resources/cdtocode/doc/jetty/Jetty10 Operations Guide _ The Eclipse Foundation-simEnts.txt rename to src/main/resources/cdtocode/doc/Jetty/Jetty10 Operations Guide _ The Eclipse Foundation-simEnts.txt diff --git a/src/main/resources/cdtocode/doc/jetty/Jetty10 Operations Guide _ The Eclipse Foundation.txt b/src/main/resources/cdtocode/doc/Jetty/Jetty10 Operations Guide _ The Eclipse Foundation.txt similarity index 100% rename from src/main/resources/cdtocode/doc/jetty/Jetty10 Operations Guide _ The Eclipse Foundation.txt rename to src/main/resources/cdtocode/doc/Jetty/Jetty10 Operations Guide _ The Eclipse Foundation.txt diff --git a/src/main/resources/cdtocode/doc/Jetty/basic-architecture-relation.txt b/src/main/resources/cdtocode/doc/Jetty/basic-architecture-relation.txt new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/src/main/resources/cdtocode/doc/Jetty/basic-architecture-simEnts.txt b/src/main/resources/cdtocode/doc/Jetty/basic-architecture-simEnts.txt new file mode 100644 index 0000000000000000000000000000000000000000..49bb2a31c12368cef3f6a78fd9a3d1f2c80f339f --- /dev/null +++ b/src/main/resources/cdtocode/doc/Jetty/basic-architecture-simEnts.txt @@ -0,0 +1,7 @@ +Buffer,class BufferUtil +Buffers,class BufferUtil +License,EclipseLicense +Connector,ConnectorFactory +Connector,Connector +Connector,Connection +Connector,ServerConnector diff --git a/src/main/resources/cdtocode/doc/Jetty/basic-architecture-ziyan.txt b/src/main/resources/cdtocode/doc/Jetty/basic-architecture-ziyan.txt new file mode 100644 index 0000000000000000000000000000000000000000..a0f7d91f710ba591bf33ed5cd96d1b2f5b71bbf5 --- /dev/null +++ b/src/main/resources/cdtocode/doc/Jetty/basic-architecture-ziyan.txt @@ -0,0 +1,7 @@ +Buffer , class BufferUtil +Buffers , class BufferUtil +License , EclipseLicense +Connector , ConnectorFactory +Connector , Connector +Connector , Connection +Connector , ServerConnector \ No newline at end of file diff --git a/src/main/resources/cdtocode/doc/jetty/basic-architecture.adoc b/src/main/resources/cdtocode/doc/Jetty/basic-architecture.txt similarity index 100% rename from src/main/resources/cdtocode/doc/jetty/basic-architecture.adoc rename to src/main/resources/cdtocode/doc/Jetty/basic-architecture.txt diff --git a/src/main/resources/cdtocode/doc/jetty/basic-architecture-relation.txt b/src/main/resources/cdtocode/doc/jetty/basic-architecture-relation.txt deleted file mode 100644 index af0c4e65c632e23e18708c5c3460c34535fe098d..0000000000000000000000000000000000000000 --- a/src/main/resources/cdtocode/doc/jetty/basic-architecture-relation.txt +++ /dev/null @@ -1,2 +0,0 @@ -Eclipse License 继承 -Handler AbstractHandler 继承 \ No newline at end of file diff --git a/src/main/resources/cdtocode/doc/jetty/basic-architecture-simEnts.txt b/src/main/resources/cdtocode/doc/jetty/basic-architecture-simEnts.txt deleted file mode 100644 index 22a14092ae0139ecd5a970f1c72d7a82e19ec961..0000000000000000000000000000000000000000 --- a/src/main/resources/cdtocode/doc/jetty/basic-architecture-simEnts.txt +++ /dev/null @@ -1,4 +0,0 @@ -License EclipseLicense -Connector Connector -Connector Connection -Connector ServerConnector \ No newline at end of file