バージョン管理 とは、項目の子コンポーネントのバージョンも含め、項目の複数バージョンを保管および管理する機能です。
バージョン管理規則は、項目タイプを定義するときに指定します。
ある項目タイプをバージョン管理の対象にすると、
その項目タイプの項目すべてがバージョン管理の対象になります。
バージョン管理には、常時とアプリケーション制御の 2 種類があります。
項目を常時バージョン管理の対象にすると、項目が更新されるたびに
項目の新規バージョンが自動的に作成され、コンテンツ・サーバーに
保管されます。項目をアプリケーション別バージョン管理の対象にすると、
ユーザー・アプリケーションによる指定時にのみ新規バージョンが作成されます。
バージョン管理は、
IBM® Content
Manager ライブラリー・サーバーによって処理されます。項目のコンテンツはリソース・マネージャーに保管されますが、
項目の各バージョンはそのコンテンツのコピーを個別に所有します。バージョン管理機能には、以下の特性があります。
- バージョン管理には、ルート・コンポーネントおよびその階層全体が含まれます。
- 項目タイプは「バージョン管理 - 常時 (version-always)、
「バージョン管理 - なし (version- never)」(デフォルト)、および「アプリケーション制御 (application-controlled)」バージョン管理の 3 つのバージョン管理ポリシーのうちの 1 つを持つことができます。
- システムに保管された項目のすべてのバージョンは、検索および取り出しが可能です。
- 項目のどのバージョンも、更新および削除することができます。
- 「アプリケーション制御 (application-controlled)」バージョン管理を
持つ項目タイプの項目を更新するとき、既存バージョンに更新を適用するか、
または更新に基づいて新規バージョンを作成するかをユーザーは選択できます。
- 項目のバージョンごとに、独自の永続 ID (PID) があります。PID には、いくつかのパーツがあり、
そのうちの 2 つが現在のコンテキストに関係があります。最初の関係あるパーツは ItemID であり、
これはすべてのバージョンの項目において同じです。
もう 1 つは、バージョン番号です。項目のバージョンごとに、異なるバージョン番号を持ち、バージョン番号はストリングとして検索および設定できます。
- それぞれの項目ごとに限られた数のバージョンのみを保持するように、
項目タイプを構成できます。
項目の更新が、許容されている最大数を超えると、
システムにより、保存されている最も古いバージョンが除去され、最新バージョンが作成されます。
- バージョン管理可能な項目が再索引付けされると、その項目の以前のすべてのバージョンは自動的に削除されます。
- 項目の子コンポーネントは、親コンポーネントのバージョンを継承します。
- 子コンポーネント・タイプのバージョンは、親タイプのバージョン管理に従うため、変更できません。
- パーツ・レベルのバージョン管理規則は、
項目タイプを表す項目タイプ関係オブジェクトから取得できます。
以下は、バージョン番号の使用法について説明したサンプルです。
DKPidICM pid = (DKPidICM)ddo.getPidObject();
String version = pid.getVersionNumber();
….
pid.setVersionNumber(version);
バージョン管理について詳しくは、SItemUpdateICM サンプルと SItemTypeCreationICM サンプルを参照してください。