Пример #1
0
 /// <summary>
 /// Index用データベース(SQLite)に、接続と要素(属性・操作)の情報を登録する
 /// </summary>
 public void doMakeIndex()
 {
     try
     {
         IndexDbWriter dbWriter = new IndexDbWriter(ProjectSetting.getVO().projectPath, ProjectSetting.getVO().dbName);
         dbWriter.writeAllConnector(this.allConnectors);
         dbWriter.writeAllElements(this.allArtifacts);
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message);
     }
 }
Пример #2
0
 /// <summary>
 /// Index用データベース(SQLite)に、接続と要素(属性・操作)の情報を登録する
 /// </summary>
 public void doMakeIndex()
 {
     try
     {
         ProjectSetting.load(this.outputDir + "\\project.bdprj");
         IndexDbWriter dbWriter = new IndexDbWriter(this.outputDir, ProjectSetting.getVO().dbName);
         dbWriter.writeAllConnector(this.allconnectors);
         dbWriter.writeAllElements(this.allArtifacts);
         // dbWriter.writeAllBehaviors(this.allArtifacts);
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message);
     }
 }
Пример #3
0
        public void CloseOnLoadComplete(string projectPath, string dbfile)
        {
            if (!this.loaded)
            {
                Int32 count;
                for (count = 0; count < 1000; count++)
                {
                    if (this.loaded)
                    {
                        break;
                    }
                    else
                    {
                        System.Threading.Thread.Sleep(100);
                    }
                }
            }

            // このプログラム(.exe)が置かれたフォルダを取得
            //string currentDir = System.Windows.Forms.Application.StartupPath ;

            //ファイルを開いて終わるまで待機する
            // Process p = Process.Start( currentDir + "\\ElementIndexer.exe", projectPath + " " + dbfile );
            //					MessageBox.Show("内部データベースを構築します。\n構築処理が完了後、OKボタンを押してください");

            try
            {
                ProjectSetting.load(projectPath + "\\project.bdprj");

                // 全成果物のリストを読み込み
                string            artifactsDir = projectPath + "\\" + ProjectSetting.getVO().artifactsPath;
                List <ArtifactVO> artifacts    = ArtifactsXmlReader.readArtifactList(artifactsDir, ProjectSetting.getVO().artifactsFile);

                // 全成果物リストの内容を成果物XMLファイルで埋める
                ArtifactXmlReader atfReader = new ArtifactXmlReader(artifactsDir);
                foreach (ArtifactVO atf in artifacts)
                {
                    // 成果物別のXMLファイルの内容読み込み
                    atfReader.readArtifactDesc(atf);
                }

                ArtifactsVO allArtifacts = new ArtifactsVO();
                allArtifacts.artifactList = artifacts;

                ConnectorXmlReader connReader    = new ConnectorXmlReader(projectPath);
                List <ConnectorVO> allConnectors = connReader.readConnectorAll();

                IndexDbWriter dbWriter = new IndexDbWriter(projectPath, ProjectSetting.getVO().dbName);

                // 全接続情報をDBに登録
                dbWriter.writeAllConnector(allConnectors);
                // 全要素情報をDBに登録
                dbWriter.writeAllElements(allArtifacts);
                // 全ふるまい情報をDBに登録
                dbWriter.writeAllBehaviors(allArtifacts);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }


            // サブプロセスが終了後、必要なくなったところでCLOSE
//            p.WaitForExit();

            this.Close();
        }