ライターをバックアップまたは復元するファイルを整理する上で重要なのは、コンポーネントの概念です。
コンポーネントを使用すると、ライターは、ファイルの編成方法、ファイル間の依存関係、およびそれらのファイルに含めることができるデータの種類をバックアップ エンジンに示すことができます。 これにより、バックアップ エンジンは、効率を最大限に高めるためにファイルを格納する方法を決定できます。
さらに、VSS ベースのアプリケーションでは、メタデータの構成要素としてコンポーネントを使用し、ライター/リクエスター通信用のメディアを使用します。
ライターと要求者は、コンポーネントに関する情報をそれぞれライター メタデータ ドキュメントとバックアップ コンポーネント ドキュメントに個別に格納し、各表現で情報が異なります。
ライター メタデータ ドキュメントのコンポーネント情報には、次のものが含まれます。
- 各ドキュメント内の 1 つのライターからの情報のみ
- そのライターのすべてのコンポーネント(明示的に に含めることができるか、バックアップ操作または復元操作に暗黙的に含めるする必要があるかどうかに関係なく、
- 論理パス バックアップ コンポーネントの選択可能なコンポーネントを特定の選択不可コンポーネントに関連付けるために使用される情報であり、コンポーネント セットを形成します。
- ファイル セット 情報 (パス、ファイルの指定、再帰フラグ) がコンポーネントごとに管理されます
ライター メタデータ ドキュメントには、復元方法や復元用の別の場所マッピングなど、ライター レベルのメタデータ情報も含まれています。 ライター メタデータ ドキュメントは読み取り専用です。 この情報を調べるインターフェイスは、IVssWMComponentです。
バックアップ コンポーネント ドキュメントのコンポーネント情報には、次のものが含まれます。
- 明示的に含まれるコンポーネントに関する情報のみ
- 別の場所のマッピングや復元など、ライター レベルのメタデータ情報
- バックアップ操作または復元操作を説明する状態情報
バックアップ コンポーネント ドキュメントには、コンポーネントの ファイル セットに関する情報は含まれません。 バックアップ コンポーネント ドキュメントは読み取り専用ではなく、ライターによって変更できます。 この情報にアクセスするためのインターフェイスは、IVssComponentです。
コンポーネントの 2 つの式のライフ サイクルと関係は、次のように理解できます。
- 作成者は、コンポーネントの初期定義を担当します。
- 要求者は、すべてのライターとそのコンポーネントのメタデータを調べます。
- 要求元は、コンポーネントの選択性と論理パスの情報から、明示的に含める必要があるコンポーネント、明示的に含めるコンポーネント、コンポーネント セットを定義するコンポーネント、およびコンポーネント セットのメンバーを決定します。
- リクエスターは、明示的な包含を必要とするコンポーネントを追加し、(その情報がバックアップ コンポーネント ドキュメントに含まれていない)コンポーネント セットにサブコンポーネントを暗黙的に含めます。
- イベントを処理する場合、ライターとリクエスターは、バックアップ コンポーネント ドキュメントに格納されているコンポーネント情報を変更して調べて、アクティビティを調整できます。
バックアップ操作と復元操作を適切に実行するには、ライターとリクエスターの両方のバージョンのコンポーネント情報が必要であり、バックアップされたデータと共に両方を格納する必要があります。
- コンポーネントの種類
- ライター によるコンポーネントの 定義
- 要求者 によるコンポーネントの使用の