public void exportBehaviorText() { // 出力フォルダはプロジェクトファイルの配置パスとする string outputDir = ProjectSetting.getVO().projectPath; // 全成果物リストの読み込み string artifactDir = ProjectSetting.getVO().projectPath + "\\" + ProjectSetting.getVO().artifactsPath; ArtifactsVO allArtifacts = ArtifactsXmlReader.readAllArtifacts(artifactDir); // 成果物パッケージXMLファイル読み込み ArtifactXmlReader atfReader = new ArtifactXmlReader(artifactDir, true); for (int i = 0; i < allArtifacts.artifactList.Count; i++) { ArtifactVO atf = allArtifacts.artifactList[i]; // 成果物VOのPathNameより出力が必要と判断された場合 if (artifactPathNameIsValid(atf.pathName)) { // ルールに従い、GUIDから成果物ファイルの名称を取得 string artifactFileName = "atf_" + atf.guid.Substring(1, 36) + ".xml"; // 成果物ファイル名と出力フォルダを渡し、ふるまいテキストを出力させる outputIndexedBehaviorText(atfReader, artifactFileName, outputDir); Console.WriteLine("{0}:テキスト出力中 {1}", i + 1, artifactFileName); } } }
/// <summary> /// 成果物XMLを全て読み込み、結果のArtifactsVOを返却する /// </summary> /// <param name="artifactDir"></param> /// <returns></returns> private static ArtifactsVO readAllArtifacts(string artifactDir) { // AllArtifacts.xml を読み込み、成果物の内容が未セット状態のartifactListを設定する ArtifactsVO allArtifacts = ArtifactsXmlReader.readAllArtifacts(artifactDir); // 成果物パッケージXMLファイル読み込み用のReaderを生成する ArtifactXmlReader atfReader = new ArtifactXmlReader(artifactDir, true); for (int i = 0; i < allArtifacts.artifactList.Count; i++) { ArtifactVO atf = allArtifacts.artifactList[i]; // 成果物XMLファイルの読み込み string artifactFileName = "atf_" + atf.guid.Substring(1, 36) + ".xml"; ArtifactVO artifact = atfReader.readArtifactFile(artifactFileName); // 読み込んだ結果の成果物VOでListの中身を置き換える allArtifacts.artifactList[i] = artifact; } return(allArtifacts); }