ReplicaMetadata.GetFilteredFullEnumerationLocalVersions Method

When overridden in a derived class, gets a filtered change batch that contains the versions of items and change units stored in this replica that correspond to the items and change units referred to in a batch of changes that are sent from some other provider, as part of a full enumeration.

Namespace:  Microsoft.Synchronization.MetadataStorage
Assembly:  Microsoft.Synchronization.MetadataStorage (in Microsoft.Synchronization.MetadataStorage.dll)

Syntax

'Declaration
Public MustOverride Function GetFilteredFullEnumerationLocalVersions ( _
    sourceChanges As FullEnumerationChangeBatch, _
    filterCallback As ReplicaMetadata..::..ItemFilterCallback _
) As IEnumerable(Of ItemChange)
'Usage
Dim instance As ReplicaMetadata
Dim sourceChanges As FullEnumerationChangeBatch
Dim filterCallback As ReplicaMetadata..::..ItemFilterCallback
Dim returnValue As IEnumerable(Of ItemChange)

returnValue = instance.GetFilteredFullEnumerationLocalVersions(sourceChanges, _
    filterCallback)
public abstract IEnumerable<ItemChange> GetFilteredFullEnumerationLocalVersions(
    FullEnumerationChangeBatch sourceChanges,
    ReplicaMetadata..::..ItemFilterCallback filterCallback
)
public:
virtual IEnumerable<ItemChange^>^ GetFilteredFullEnumerationLocalVersions(
    FullEnumerationChangeBatch^ sourceChanges, 
    ReplicaMetadata..::..ItemFilterCallback^ filterCallback
) abstract
abstract GetFilteredFullEnumerationLocalVersions : 
        sourceChanges:FullEnumerationChangeBatch * 
        filterCallback:ReplicaMetadata..::..ItemFilterCallback -> IEnumerable<ItemChange> 
public abstract function GetFilteredFullEnumerationLocalVersions(
    sourceChanges : FullEnumerationChangeBatch, 
    filterCallback : ReplicaMetadata..::..ItemFilterCallback
) : IEnumerable<ItemChange>

Parameters

Return Value

Type: System.Collections.Generic.IEnumerable<ItemChange>
A filtered change batch that contains the versions of items and change units stored in this replica that correspond to the items and change units referred to in a batch of changes that are sent from some other provider, as part of a full enumeration.

Remarks

This method helps a synchronization provider implement its ProcessFullEnumerationChangeBatch method when the destination provider filters changes.

Change appliers use the versions in the batch of changes that are returned from this method for conflict detection.

The filterCallback delegate will be called before each item is added to a batch. If the delegate returns true, the item is added to the batch; otherwise, it is not added.

Notes to Implementers

The change batch that is returned from this method must contain one entry for every item that has an item ID between the lower and upper bounds specified in sourceChanges, including change unit entries, except when filterCallback indicates that the entry should not be included. If an item exists in the item store and is included by the filter, its entry must contain its version information for this replica. If an item that is included by the filter does not exist, its version must be set to SyncVersion.UnknownVersion and its P:Microsoft.Synchronization.ItemChange.ChangeKind property must be set to UnknownItem.

See Also

Reference

ReplicaMetadata Class

Microsoft.Synchronization.MetadataStorage Namespace