Rational Developer for System z

CARMA 比較基準の定義

CARMA には、Rational® Developer ワークスペースの (関連付けられた) リソース (例えば、ローカル・プロジェクトまたはリモート・プロジェクト) を、CARMA RAM 内のリソースと比較する機能があります。 これは、ワークスペース・ファイルにどんな変更が加えられたかを、変更を CARMA へチェックインする前に確認するために役立ちます。

このタスクについて

CARMA は、リソースをワークスペースへダウンロードするときに、現行の基準値を保管します。 基準値およびワークスペースの変更点に基づいて、CARMA は RAM 内のバージョンへどんな変更が加えられたかを特定でき、変更がどこへ移動されるべきかを示すことができます。 例えば、CARMA はワークスペース・ファイルの更新が、ローカルで行われたか、RAM で行われたか、またはその両方かを判別できます。 変更情報に基づいて、CARMA はファイルのどの部分が変更されたかを示すことができ、変更を RAM にアップロードするか、RAM からコピーするか、または変更がワークスペースと RAM の両方で行われたためにマージを実行する必要があるかどうかを示します。

フレキシブルな方法で比較を実行できるようにするため、CARMA には比較基準構成ファイル syncConfig.xml が用意されています。 この syncConfig ファイルは、RSE 構成ディレクトリー* に配置されており、RSE 開始時** に自動的に CARMA によって取得されます。

比較構成ファイルによって、RAM デベロッパーは RAM 単位の比較における様々な基準を指定できます。 比較構成ファイルの例の 1 つは次のとおりです。
<?xml version="1.0" encoding="UTF-8"?>
<CARMACompare xmlns="http://www.ibm.com/CARMA/SyncConfig">
      <RAMCompare ramId="00">

            <memberinfo key="Last Modified Date" type="date" format="MM/DD/YY"/>
            <memberinfo key="Last Modified Time" type="date" format="HH:MM"/>
            <memberinfo key="Last Modified Seconds" type="int" />
      </RAMCompare>
      <RAMCompare ramId="01">
            <content />
      </RAMCompare>
</CARMACompare>

XML 文書は CARMACompare エレメントで始める必要があります。CARMACompare エレメントには、1 つ以上の RAMCompare エレメントを含めることができます。各 RAMCompare エレメントが、1 つの RAM に対する比較基準を指定します。 基準の適用先の RAM は、ramId 属性によって表されます。 ramId 値は CARMA VSAM 構成内の RAM ID に一致している必要があり、2 桁の数字です。 ID が 2 桁よりも少ない場合は、ID 値の先頭に 0 を加える必要があります。

注: ramId または uniqueId のいずれかを使用して RAM を識別できます。 RAM の特定の ID を知っている場合は、ramId を使用します。 RAM は知っているが、関連付けられている ramID を知らない場合は、uniqueId を使用します。
上の例では、2 つの RAM、01 および 02 のための比較基準が定義されています。 それぞれの RAMCompare エレメントは RAM のための基準を含みます。 現在、チェック用に使用可能な基準には以下のようなものがあります。
  • メンバー情報
  • メンバー・コンテンツ

メンバー情報

構成は、各 RAMCompare に対して 1 つ以上の memberinfo エレメントを定義できます。 メンバー情報エレメントは、比較を行うために連結されます。 メンバー情報エレメントは、key 属性、type 属性およびオプションの format 属性を含みます。現在 type 属性および format 属性は無視されますが、使用方法の説明が含められています。 現在、key はストリングの等価性について、直接比較されます。
key 属性
key 属性は、リソースのプロパティー内にあるメンバー情報項目を参照します。 key 属性は、リソースの RAM によって戻される key と一致している必要があります。
type 属性
type 属性は、key の値がどのように扱われるべきかを指定します。 type 属性は、以下のいずれかに設定できます。
  • int
  • string
  • float
  • date
type はメンバー情報がどのように比較されるべきかを定義します。例えば、以下の基準を使用するとします。
<memberinfo key="Last Modified Seconds" type="int" />
メンバー情報の値 0001 は 1 と等価です。
format 属性
format 属性は、type に「date」を指定したエレメントでのみ必須です。format 属性により、日付の値が構文解析され比較される方法を定義する基準を設定できます。 例えば、以下の基準を使用するとします。
<memberinfo key="Last Modified Time" type="date" format="HH:MM"/>
メンバー情報の値 1:10 PM は 13:10 と同等です。

メンバー・コンテンツ

構成で、各 RAMCompare に対して 1 つのコンテンツ・エレメントを定義できます。 コンテンツ・エレメントは、CARMA がリソースのバイト・コンテンツに変更があるかどうかを検査する必要があることを示します。
注: これには、比較を実行するために、ワークスペースにファイル全体をダウンロードする必要があります。
ファイル・コンテンツがワークスペースへダウンロードされ、ファイル・ハッシュ (MD5) がファイル・コンテンツに対して実行されます。ファイル・コンテンツ・ハッシュが、ワークスペースのファイル・ハッシュと異なる場合、相違が示されます。

デフォルトの比較基準

RAMCompare エレメントが、CARMA が実行されている RAM に対して定義されていない場合、デフォルトの比較基準セットが使用されます。 デフォルトの比較基準では、最初に carma.version メンバー情報キーが、比較対象のリソースに対して定義されているかどうかを調べます。 carma.version キーが使用可能な場合、単一のキーの値が比較基準として使用されます。 carma.version キーが使用できない場合、比較はメンバー・コンテンツに基づいて実行されます。

注: * RSE 構成ディレクトリーについての詳細情報は、「Rational Developer for System z® ホスト構成ガイド (SC88-5663-04)」を参照してください。
注: ** 比較構成ファイルは、RSE の開始時にのみ取得されます。 変更を検出するためには、RSE の接続を切断してから再接続してください。

ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)