Freigeben über


IChangeApplicationServices-Schnittstelle

Stellt ein Änderungsanwendungs-Dienstobjekt dar, mit dem Änderungsübernahmeaktionen einzeln ausgeführt werden können.

interface IChangeApplicationServices : IUnknown

Member

IChangeApplicationServices-Methode Beschreibung

IChangeApplicationServices::Initialize

Initialisiert das Änderungsanwendungs-Dienstobjekt. Diese Methode muss vor allen anderen Methoden aufgerufen werden.

IChangeApplicationServices::BeginChangeApplication

Startet das Verarbeiten einer Gruppe von Änderungen.

IChangeApplicationServices::BeginFullEnumerationChangeApplication

Startet die Verarbeitung einer Gruppe von Änderungen als Teil einer Wiederherstellungssynchronisierung.

IChangeApplicationServices::EndChangeApplication

Beendet die Verarbeitung einer Gruppe von Änderungen.

IChangeApplicationServices::EndFullEnumerationChangeApplication

Beendet die Verarbeitung einer Gruppe von Änderungen als Teil einer Wiederherstellungssynchronisierung.

IChangeApplicationServices::SetDestinationKnowledge

Legt das Zielwissen fest, das zur Berechnung des aktualisierten Zielwissens verwendet wird, wenn Änderungen übernommen werden.

IChangeApplicationServices::GetUpdatedDestinationKnowledge

Ruft das aktualisierte Zielwissen ab, das alle bis dahin übernommenen Änderungen enthält.

IChangeApplicationServices::GetChangeApplicationContext

Ruft ein Objekt ab, das die aktuell zu übernehmende Änderung darstellt.

IChangeApplicationServices::ReportItemChangeApplied

Benachrichtigt den Änderungsübernahmedienst darüber, dass eine Elementänderung erfolgreich für das Zielreplikat übernommen wurde.

IChangeApplicationServices::ReportChangeUnitChangeApplied

Benachrichtigt den Änderungsübernahmedienst darüber, dass eine Änderung der Änderungseinheit erfolgreich für das Zielreplikat übernommen wurde.

IChangeApplicationServices::ReportRecoverableErrorOnItemChange

Benachrichtigt den Änderungsübernahmedienst darüber, dass ein behebbarer Fehler bei dem Versuch des Zielanbieters aufgetreten ist, die Elementänderung zu übernehmen.

IChangeApplicationServices::ReportRecoverableErrorOnChangeUnitChange

Benachrichtigt den Änderungsübernahmedienst darüber, dass ein behebbarer Fehler bei dem Versuch des Zielanbieters aufgetreten ist, die Änderung der Änderungseinheit zu übernehmen.

Hinweise

Die IChangeApplicationServices-Schnittstelle ist Teil des Änderungsübernahmediensts von Sync Framework, der verwendet wird, wenn ein Anbieter größere Flexibilität als diejenige benötigt, die durch den von Sync Framework bereitgestellten Standardänderungsanwender zugelassen wird. Beispielsweise muss ein Anbieter die Übernahme bestimmter Änderungen bis zum Ende der Synchronisierungssitzung aufschieben. Der Standardänderungsanwender lässt dies nicht zu. Der Anbieter kann Konflikterkennung und Wissensberechnung mithilfe des Änderungsübernahmediensts behandeln, während Änderungen weiterhin wie erforderlich verschoben werden können.

Für einen Anbieter, der die zusätzliche Flexibilität des Änderungsübernahmediensts nicht benötigt, kann es günstiger sein, einen Standardänderungsanwender wie z. B. ISynchronousNotifyingChangeApplier zu verwenden.

Der Änderungsübernahmedienst wird in der Regel von einem Zielanbieter verwendet, um das Implementieren der zugehörigen IKnowledgeSyncProvider::ProcessChangeBatch-Methode und IKnowledgeSyncProvider::ProcessFullEnumerationChangeBatch-Methode zu unterstützen. Führen Sie die folgenden Schritte durch, um den Änderungsübernahmedienst zu verwenden:

  1. Rufen Sie ein IChangeApplicationServices-Objekt ab, indem Sie IID_IChangeApplicationServices an die IProviderSyncServices::CreateChangeApplier-Methode übergeben.

  2. Initialisieren Sie das Objekt, indem Sie IChangeApplicationServices::Initialize aufrufen.

  3. Starten Sie die Verarbeitung eines Änderungsbatchs durch Aufrufen von IChangeApplicationServices::BeginChangeApplication, oder starten Sie die Verarbeitung eines Änderungsbatchs zur Wiederherstellungssynchronisierung durch Aufrufen von IChangeApplicationServices::BeginFullEnumerationChangeApplication. Normalerweise wird diese Methode einmal für jeden Änderungsbatch zu dessen Verarbeitung aufgerufen.

  4. Zählen Sie die Änderungen im Änderungsbatch auf. Rufen Sie für jede Änderung einmal IChangeApplicationServices::GetChangeApplicationContext auf, und verwenden Sie das zurückgegebene IChangeApplicationContext-Objekt, um die Änderung zu übernehmen.

  5. Melden Sie Änderungen als erfolgreich angewendet, indem Sie IChangeApplicationServices::ReportItemChangeApplied oder IChangeApplicationServices::ReportChangeUnitChangeApplied aufrufen. Melden Sie das Anwenden von Änderungen als fehlgeschlagen, indem Sie IChangeApplicationServices::ReportRecoverableErrorOnItemChange oder IChangeApplicationServices::ReportRecoverableErrorOnChangeUnitChange aufrufen.

  6. Rufen Sie zu einem beliebigen Zeitpunkt IChangeApplicationServices::GetUpdatedDestinationKnowledge auf, um das aktualisierte Zielwissen mit allen Änderungen abzurufen, die bis dahin übernommen wurden.

  7. Beenden Sie die Verarbeitung eines Änderungsbatchs durch Aufrufen von IChangeApplicationServices::EndChangeApplication, oder beenden Sie die Verarbeitung eines Änderungsbatchs zur Wiederherstellungssynchronisierung durch Aufrufen von IChangeApplicationServices::EndFullEnumerationChangeApplication. Speichern Sie das aktualisierte Zielwissen und vergessene Zielwissensobjekte, die von dieser Methode zurückgegeben werden.

  8. Wiederholen Sie Schritt 3 bis 7 für jeden vom Zielanbieter empfangenen Änderungsbatch.

Anforderungen

Header: Synchronization.h

Siehe auch

Konzepte

Kernkomponenten von Sync Framework