Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Performs conflict detection, conflict handling, and change application for a batch of changes as part of a recovery synchronization.
Namespace: Microsoft.Synchronization
Assembly: Microsoft.Synchronization (in Microsoft.Synchronization.dll)
Syntax
'Declaration
Public Sub ApplyFullEnumerationChanges ( _
resolutionPolicy As ConflictResolutionPolicy, _
sourceChanges As FullEnumerationChangeBatch, _
changeDataRetriever As IChangeDataRetriever, _
destinationVersions As IEnumerable(Of ItemChange), _
destinationKnowledge As SyncKnowledge, _
destinationForgottenKnowledge As ForgottenKnowledge, _
changeApplierTarget As INotifyingChangeApplierTarget, _
syncSessionState As SyncSessionContext, _
syncCallback As SyncCallbacks _
)
'Usage
Dim instance As NotifyingChangeApplier
Dim resolutionPolicy As ConflictResolutionPolicy
Dim sourceChanges As FullEnumerationChangeBatch
Dim changeDataRetriever As IChangeDataRetriever
Dim destinationVersions As IEnumerable(Of ItemChange)
Dim destinationKnowledge As SyncKnowledge
Dim destinationForgottenKnowledge As ForgottenKnowledge
Dim changeApplierTarget As INotifyingChangeApplierTarget
Dim syncSessionState As SyncSessionContext
Dim syncCallback As SyncCallbacks
instance.ApplyFullEnumerationChanges(resolutionPolicy, _
sourceChanges, changeDataRetriever, _
destinationVersions, destinationKnowledge, _
destinationForgottenKnowledge, _
changeApplierTarget, syncSessionState, _
syncCallback)
public void ApplyFullEnumerationChanges(
ConflictResolutionPolicy resolutionPolicy,
FullEnumerationChangeBatch sourceChanges,
IChangeDataRetriever changeDataRetriever,
IEnumerable<ItemChange> destinationVersions,
SyncKnowledge destinationKnowledge,
ForgottenKnowledge destinationForgottenKnowledge,
INotifyingChangeApplierTarget changeApplierTarget,
SyncSessionContext syncSessionState,
SyncCallbacks syncCallback
)
public:
void ApplyFullEnumerationChanges(
ConflictResolutionPolicy resolutionPolicy,
FullEnumerationChangeBatch^ sourceChanges,
IChangeDataRetriever^ changeDataRetriever,
IEnumerable<ItemChange^>^ destinationVersions,
SyncKnowledge^ destinationKnowledge,
ForgottenKnowledge^ destinationForgottenKnowledge,
INotifyingChangeApplierTarget^ changeApplierTarget,
SyncSessionContext^ syncSessionState,
SyncCallbacks^ syncCallback
)
member ApplyFullEnumerationChanges :
resolutionPolicy:ConflictResolutionPolicy *
sourceChanges:FullEnumerationChangeBatch *
changeDataRetriever:IChangeDataRetriever *
destinationVersions:IEnumerable<ItemChange> *
destinationKnowledge:SyncKnowledge *
destinationForgottenKnowledge:ForgottenKnowledge *
changeApplierTarget:INotifyingChangeApplierTarget *
syncSessionState:SyncSessionContext *
syncCallback:SyncCallbacks -> unit
public function ApplyFullEnumerationChanges(
resolutionPolicy : ConflictResolutionPolicy,
sourceChanges : FullEnumerationChangeBatch,
changeDataRetriever : IChangeDataRetriever,
destinationVersions : IEnumerable<ItemChange>,
destinationKnowledge : SyncKnowledge,
destinationForgottenKnowledge : ForgottenKnowledge,
changeApplierTarget : INotifyingChangeApplierTarget,
syncSessionState : SyncSessionContext,
syncCallback : SyncCallbacks
)
Parameters
- resolutionPolicy
Type: Microsoft.Synchronization.ConflictResolutionPolicy
The policy to use for resolving conflicts.
- sourceChanges
Type: Microsoft.Synchronization.FullEnumerationChangeBatch
The batch of changes from the source provider.
- changeDataRetriever
Type: Microsoft.Synchronization.IChangeDataRetriever
An object that can be used to retrieve item data from the source replica.
- destinationVersions
Type: System.Collections.Generic.IEnumerable<ItemChange>
A batch of changes that contains the versions of items that are stored in the destination replica. These items correspond to the items in sourceChanges.
- destinationKnowledge
Type: Microsoft.Synchronization.SyncKnowledge
The knowledge of the destination replica.
- destinationForgottenKnowledge
Type: Microsoft.Synchronization.ForgottenKnowledge
The forgotten knowledge of the destination replica.
- changeApplierTarget
Type: Microsoft.Synchronization.INotifyingChangeApplierTarget
The object that will be called to save changes and conflicts.
- syncSessionState
Type: Microsoft.Synchronization.SyncSessionContext
State information about the current session.
- syncCallback
Type: Microsoft.Synchronization.SyncCallbacks
Callbacks that will receive notifications about change application events.
Exceptions
| Exception | Condition |
|---|---|
| ArgumentNullException | sourceChanges, changeDataRetriever, destinationKnowledge, changeApplierTarget, syncCallback, or destinationVersions is a null reference (Nothing in Visual Basic). |
| ArgumentOutOfRangeException | resolutionPolicy is not member of the ConflictResolutionPolicy enumeration. |
| SyncIdFormatMismatchException |
—or—
|
Remarks
This method detects conflicts that occur between the changes sent in sourceChanges and the corresponding items in the destination replica. It resolves any conflicts according to the policy specified by resolutionPolicy. If it is necessary, this method then calls methods on changeApplierTarget to save changes to the destination replica and to save unresolved conflicts.