Partilhar via


IKnowledgeSyncProvider::GetFullEnumerationChangeBatch

Obtém um lote de alterações que contém metadados dos itens que têm IDs maiores do que o limite inferior especificado, como parte de uma enumeração completa.

HRESULT GetFullEnumerationChangeBatch(
DWORD dwBatchSize,
  const BYTE * pbLowerEnumerationBound,
  ISyncKnowledge * pSyncKnowledge,
  ISyncFullEnumerationChangeBatch ** ppSyncChangeBatch,
  IUnknown ** ppUnkDataRetriever);

Parâmetros

  • dwBatchSize
    [in] O número de alterações a serem incluídas no lote de alterações.
  • pbLowerEnumerationBound
    [in] O limite inferior de IDs de itens. Este método retorna alterações com IDs maiores que ou iguais a este valor de ID.
  • pSyncKnowledge
    [in] Se uma alteração de item estiver contida neste objeto de conhecimento, os dados desse item já existirão na réplica de destino.
  • ppSyncChangeBatch
    [out] Retorna um lote de alterações que contém metadados para itens com IDs maiores que o limite inferior especificado.
  • ppUnkDataRetriever
    [out] Retorna um objeto que pode ser usado para recuperar dados de alteração. Ele pode ser um objeto ISynchronousDataRetriever ou um objeto específico do provedor.

Valor de retorno

  • S_OK

  • Códigos de erro determinados pelo provedor

Comentários

Este método é chamado por Estrutura de sincronização durante a recuperação de conhecimento esquecido.

Este método enumera, em ordem classificada pela ID do item, as alterações com uma ID de item de pbLowerEnumerationBound ou maior. Isso permite ao Estrutura de sincronização determinar quais itens no provedor de destino foram excluídos, mas esquecidos pelo provedor de origem. Como opção, este método também pode adicionar alterações ao lote classificado por ID de item que tem ID de item menor do que pbLowerEnumerationBound e que não estão contidas no conhecimento de destino.

Observações para implementadores

Se não houver mais alterações para enviar depois deste lote, ISyncChangeBatchBase::SetLastBatch deverá ser chamado no lote de alterações retornado. Caso contrário, Estrutura de sincronização chamará GetFullEnumerationChangeBatch novamente para recuperar outro lote de alterações.

Para um provedor que envia dados de item juntamente com metadados de alteração de item, pSyncKnowledge pode ser usado para determinar se é necessário enviar dados de item. Os dados de item não precisam ser enviados quando a alteração do item está contida em pSyncKnowledge. Esteja ciente de que, para que possa ser usado para verificar itens de confinamento, pSyncKnowledge deve ser mapeado com o método ISyncKnowledge::MapRemoteToLocal no objeto de conhecimento contido no provedor atual.

Consulte também

Referência

IKnowledgeSyncProvider Interface

Conceitos

Recuperando uma réplica desatualizada