Interface IChangeApplicationServices
Representa um objeto de serviço de aplicação de alterações que pode ser usado para executar ações de aplicação de alterações individualmente.
interface IChangeApplicationServices : IUnknown
Membros
Método IChangeApplicationServices | Descrição |
---|---|
Inicializa o objeto de serviço de aplicação de alterações. Este método deve ser chamado antes de quaisquer outros métodos. |
|
Inicia o processamento de um conjunto de alterações. |
|
IChangeApplicationServices::BeginFullEnumerationChangeApplication |
Inicia o processamento de um conjunto de alterações como parte de uma sincronização de recuperação. |
Encerra o processamento de um conjunto de alterações. |
|
IChangeApplicationServices::EndFullEnumerationChangeApplication |
Encerra o processamento de um conjunto de alterações como parte de uma sincronização de recuperação. |
Define o conhecimento de destino usado para calcular o conhecimento de destino atualizado conforme as alterações são aplicadas. |
|
Obtém o conhecimento de destino atualizado que contém todas as alterações que foram aplicadas até o momento. |
|
Obtém um objeto que representa a alteração atual a ser aplicada. |
|
Notifica o serviço de aplicação de alterações de que a alteração de um item foi aplicada com êxito à réplica de destino. |
|
Notifica o serviço de aplicação de alterações de que a alteração de uma unidade de alteração foi aplicada com êxito à réplica de destino. |
|
IChangeApplicationServices::ReportRecoverableErrorOnItemChange |
Notifica o serviço de aplicação de alterações de que um erro recuperável ocorreu quando o provedor de destino tentou aplicar a alteração de item. |
IChangeApplicationServices::ReportRecoverableErrorOnChangeUnitChange |
Notifica o serviço de aplicação de alterações de que um erro recuperável ocorreu quando o provedor de destino tentou aplicar a alteração da unidade de alteração. |
Comentários
A interface IChangeApplicationServices faz parte do serviço de aplicação de alterações do Sync Framework, que é usado quando um provedor requer uma flexibilidade maior do que a permitida pelo aplicador de alterações padrão fornecido pelo Sync Framework. Por exemplo, um provedor deve adiar a aplicação de determinadas alterações para o fim da sessão de sincronização. O aplicador de alterações padrão não permite isso. O provedor pode usar o serviço de aplicação de alterações para manipular a detecção de conflitos e o cálculo de conhecimento, ao mesmo tempo em que mantém a capacidade de adiar as alterações conforme a necessidade.
Para um provedor que não precisa da flexibilidade adicional do serviço de aplicação de alterações, pode ser mais fácil usar um aplicador de alterações padrão, como o ISynchronousNotifyingChangeApplier.
O serviço de aplicação de alterações geralmente é usado por um provedor de destino para ajudar na implementação de seus métodos IKnowledgeSyncProvider::ProcessChangeBatch e IKnowledgeSyncProvider::ProcessFullEnumerationChangeBatch. Para usar o serviço de aplicação de alterações, siga as etapas a seguir:
Obtenha um objeto IChangeApplicationServices passando IID_IChangeApplicationServices para o método IProviderSyncServices::CreateChangeApplier.
Inicialize o objeto chamando IChangeApplicationServices::Initialize.
Inicie o processamento de um lote de alterações chamando IChangeApplicationServices::BeginChangeApplication ou inicie o processamento de um lote de alterações de sincronização de recuperação chamando IChangeApplicationServices::BeginFullEnumerationChangeApplication. Geralmente, esse método é chamado uma vez para cada lote de alterações a ser processado.
Enumere as alterações no lote de alterações. Chame IChangeApplicationServices::GetChangeApplicationContext uma vez para cada alteração e use o objeto IChangeApplicationContext retornado para aplicar a alteração.
Relate as alterações cujas aplicações forem bem-sucedidas, chamando IChangeApplicationServices::ReportItemChangeApplied ou IChangeApplicationServices::ReportChangeUnitChangeApplied. Relate as alterações cujas aplicações falharem, chamando IChangeApplicationServices::ReportRecoverableErrorOnItemChange ou IChangeApplicationServices::ReportRecoverableErrorOnChangeUnitChange.
Chame IChangeApplicationServices::GetUpdatedDestinationKnowledge a qualquer momento para recuperar o conhecimento de destino atualizado que contém todas as alterações que foram aplicadas até o momento.
Encerre o processamento de um lote de alterações chamando IChangeApplicationServices::EndChangeApplication ou encerre o processamento de um lote de alterações de sincronização de recuperação chamando IChangeApplicationServices::EndFullEnumerationChangeApplication. Salve os objetos de conhecimento de destino atualizado e de conhecimento esquecido de destino que são retornados por esse método.
Repita as etapas de 3 a 7 para cada lote de alterações recebido pelo provedor de destino.
Requisitos
Cabeçalho: Synchronization.h