예제 #1
0
        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);
            }
        }
예제 #2
0
        /// <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();
                }
            }
        }
예제 #3
0
        /// <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);
            }
        }