IProviderConverter インターフェイス

派生クラスによって実装された場合、ISyncProvider オブジェクトを IKnowledgeSyncProvider オブジェクトに変換できるオブジェクトを表します。

interface IProviderConverter : IUnknown

メンバー

IProviderConverter メソッド 説明

IProviderConverter::Initialize

変換する ISyncProvider オブジェクトを使用して、IProviderConverter オブジェクトを初期化します。

解説

通常、IProviderConverter は、変換するカスタム プロバイダーの開発者が実装します。

IProviderConverter の実装は、IProviderConverterRegistration::RegisterProviderConverter を使用して、Sync Framework に登録する必要があります。この登録には、コンバーターで IKnowledgeSyncProvider に変換できるインターフェイスの IID と、Sync Framework で CoCreateInstance を使用してコンバーター オブジェクトを作成する際に使用できる CLSID が必要です。

同期の管理に ISyncSession オブジェクトを使用する場合、Sync Framework では、各プロバイダーを IKnowledgeSyncProvider で表すことが必要になります。各プロバイダーの IKnowledgeSyncProvider インターフェイスを取得するには、Sync Framework で、IApplicationSyncServices::CreateSyncSession の処理中に次の手順を実行します。

  1. Sync Framework で、ISyncProvider オブジェクトの QueryInterface メソッドに IID_IKnowledgeSyncProvider を渡して、プロバイダーを表す ISyncProvider インターフェイスに対して直接クエリを実行します。

  2. QueryInterface によって E_NOINTERFACE が返されると、Sync Framework は、登録された IProviderConverter の実装を調査して、その中から ISyncProvider オブジェクトを IKnowledgeSyncProvider オブジェクトに変換できる実装を特定します。

  3. プロバイダーを変換できる IProviderConverter が登録されている場合、Sync Framework は、その IProviderConverter オブジェクトから IKnowledgeSyncProvider インターフェイスを取得します。Sync Framework では、まず、IProviderConverter::Initialize を使用してコンバーターに ISyncProvider オブジェクトを渡してから、IProviderConverterQueryInterface メソッドに IID_IKnowledgeSyncProvider を渡して、この処理を行います。

必要条件

ヘッダー: Synchronization.h

参照

概念

Sync Framework のコア コンポーネント