public void writeAllBehaviors(ArtifactsVO allArtifacts) { Console.Write("inserting table for behaviors "); try { conn.Open(); recreateBehaviorTable(); behaviorRecCount = 0; bhvParser = new BehaviorParser(); // トランザクションの開始 // (トランザクションのcommitは指定行数がINSERTされる度にループ内で実施) transaction = conn.BeginTransaction(); // 実装モデルを除いてインデックスに登録 foreach (ArtifactVO atf in allArtifacts.getArtifactsExcludeImplModel()) { // ふるまいテーブルの書き込み(成果物フォルダ配下のクラス要素) insertBehaviorsInArtifact(atf); } transaction.Commit(); Console.WriteLine(". done(" + behaviorRecCount + "records)"); conn.Close(); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// 成果物配下のクラス(インタフェース、列挙)の操作のふるまい(method.behavior)をテキストに出力する /// </summary> /// <param name="artifacts">全成果物リスト</param> public void outputBehaviorsText(ArtifactsVO artifacts) { Console.WriteLine("start outputBehaviorsText():"); StreamWriter csvsw = null; try { csvsw = new StreamWriter(outputDir + "\\AllBehaviors.txt", false, System.Text.Encoding.GetEncoding("utf-8")); // 成果物のうち実装モデルを除いたものが対象 foreach (var atf in artifacts.getArtifactsExcludeImplModel()) { retrieveElementsInArtifact(atf, csvsw); } } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { if (csvsw != null) { csvsw.Close(); } } }
/// <summary> /// 成果物リスト内に存在する全ての要素をIndexDBに登録する /// </summary> /// <param name="allArtifacts">全成果物VO</param> public void writeAllElements(ArtifactsVO allArtifacts) { Console.Write("inserting tables for element, attribute, method "); try { // DB接続をオープンする conn.Open(); recreateElementTable(); recreateAttrMthTable(); // トランザクションの開始 // (トランザクションのcommitは指定行数がINSERTされる度にループ内で実施) transaction = conn.BeginTransaction(); // 実装モデルを除いてインデックスに登録 foreach (ArtifactVO atf in allArtifacts.getArtifactsExcludeImplModel()) { // 要素テーブルの書き込み insertElementsInArtifact(atf); // 属性・操作テーブルの書き込み insertAttrMthInArtifact(atf); } transaction.Commit(); Console.WriteLine(". done(" + elementRecCount + "records)"); conn.Close(); } catch (Exception ex) { Console.WriteLine(ex.Message); } }