intra-mart Accel Platform IM-共通マスタ 退避仕様書 第3版 2013-10-01

5. 退避を実行する

5.1. ジョブから実行する方法

テナント環境セットアップを実行すると、退避を起動するためのジョブが登録されます。
このジョブを実行することで退避を実行します。
ジョブプログラムは、設定ファイルから退避基準日を取得して退避APIを使用して退避を実行します。
テナント環境セットアップで、以下の退避ジョブが登録されます。
ジョブID ジョブ名 ジョブプログラムクラス
imm-job-detail-backup 退避 jp.co.intra_mart.system.master.job_scheduler.StandardBackuperJobScheduler
退避基準日の設定は、設定ファイルで実行します。

コラム

設定ファイルが見つからない場合、あるいは設定ファイルから基準日を読み込めなかった場合、退避は実行されません。

5.1.1. 退避基準日設定ファイル

設定ファイルは、退避基準日を設定します。設定ファイルは以下の場所に配置されています。
<パブリックストレージ>/im_master/config/backup_config.xml

コラム

パブリックストレージのデフォルトは以下の通りです。

<ストレージルート>/public/storage
1
2
3
4
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<entry key="backup-date">2010-01-01</entry>
</properties>

【リスト:退避基準日設定ファイル】

3行目のentry要素に退避基準日を設定します。日付の書式は「yyyy-MM-dd」で、時間は設定しません。
ここで設定した日付が新しいシステム開始日となり、すべての期間化情報の最初の期間の開始日となります。

注意

1行目DOCTYPEを消さないでください。設定ファイルの読み込みで使用しています。

5.2. 退避APIを使って実行する方法

退避はAPIから実行することができます。退避専用のAPI 「BackupManager」を使用し退避を実行します。
【リスト:退避APIの実行方法】はもっとも簡単に退避を実行する例です。BackupManagerの詳細については、APIガイドを参照してください。
BackupManager manager = new BackupManager();
manager.doBackUp(BACKUP_DATE);

【リスト:退避APIの実行方法】

退避マネージャは、plugin.xmlより実行対象の退避実装クラスを取得し、実行します。

注意

doBackUpメソッドはトランザクション内では実行しないでください。退避の実装クラス内でトランザクションを管理します。

5.3. plugin.xmlファイルの設定

plugin.xmlは以下の場所に配置されています。
<展開したwar/WEB-INF/plugin/jp.co.intra_mart.standard/plugin.xml>
【リスト:plugin.xml(退避の設定)】はplugin.xmlの一部です。エクステンションポイント「jp.co.intra_mart.foundation.master.backup」の部分が退避の設定になります。
退避は、すべての領域に対象に処理を行うため、通常このファイルを編集することはありません。
  <extension point="jp.co.intra_mart.foundation.master.backup" >
     <accessor name="standard" id="jp.co.intra_mart.standard" version="8.0.0" rank="1" >
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.SystemStartDateUpdate" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardCompanyBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardCompanyGroupBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardCorporationBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardCorporationGroupBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardCurrencyBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardCustomerBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardItemBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardItemCategoryBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardPublicGroupBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.master.backup.impl.StandardUserBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.datastore.common.backup.impl.StandardCompanyBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.datastore.common.backup.impl.StandardPublicGroupBackuperImpl" />
        <backuper category="standard"
            class="jp.co.intra_mart.system.datastore.common.backup.impl.StandardUserBackuperImpl" />
     </accessor>
  </extension>

【リスト:plugin.xml(退避の設定)】