IChangeApplicationServices 인터페이스
변경 적용 동작을 개별적으로 수행하는 데 사용할 수 있는 변경 적용 서비스 개체를 나타냅니다.
interface IChangeApplicationServices : IUnknown
멤버
IChangeApplicationServices 메서드 | 설명 |
---|---|
변경 적용 서비스 개체를 초기화합니다. 이 메서드를 가장 먼저 호출해야 합니다. |
|
변경 내용 집합을 처리하기 시작합니다. |
|
IChangeApplicationServices::BeginFullEnumerationChangeApplication |
복구 동기화의 일부로 변경 내용 집합을 처리하기 시작합니다. |
변경 내용 집합의 처리를 끝냅니다. |
|
IChangeApplicationServices::EndFullEnumerationChangeApplication |
복구 동기화의 일부로 변경 내용 집합의 처리를 끝냅니다. |
변경 내용이 적용됨에 따라 업데이트된 대상 정보를 계산하는 데 사용되는 대상 정보를 설정합니다. |
|
지금까지 적용된 모든 변경 내용을 포함하는 업데이트된 대상 정보를 가져옵니다. |
|
적용할 현재 변경 내용을 나타내는 개체를 가져옵니다. |
|
항목 변경 내용이 대상 복제본에 제대로 적용되었음을 변경 적용 서비스에 알립니다. |
|
변경 단위 변경 내용이 대상 복제본에 제대로 적용되었음을 변경 적용 서비스에 알립니다. |
|
IChangeApplicationServices::ReportRecoverableErrorOnItemChange |
대상 공급자가 항목 변경 내용을 적용하려고 시도했을 때 복구할 수 있는 오류가 발생했음을 변경 적용 서비스에 알립니다. |
IChangeApplicationServices::ReportRecoverableErrorOnChangeUnitChange |
대상 공급자가 변경 단위 변경 내용을 적용하려고 시도했을 때 복구할 수 있는 오류가 발생했음을 변경 적용 서비스에 알립니다. |
주의
IChangeApplicationServices 인터페이스는 Sync Framework의 변경 적용 서비스에 포함되어 있습니다. 이 서비스는 Sync Framework에서 제공하는 표준 변경 내용 적용자에 허용된 것보다 높은 수준의 유연성이 공급자에 필요할 때 사용됩니다. 예를 들어 공급자가 동기화 세션이 끝날 때까지 특정 변경 내용의 적용을 연기해야 하는 경우를 가정해 봅니다. 표준 변경 내용 적용자에서는 이것이 허용되지 않습니다. 그러나 공급자는 변경 적용 서비스를 사용하여 필요한 경우 변경을 연기하고 충돌 검색 및 정보 계산을 처리할 수 있습니다.
변경 적용 서비스의 유연성이 필요 없는 공급자의 경우 ISynchronousNotifyingChangeApplier와 같은 표준 변경 내용 적용자를 사용하는 것이 쉬울 수 있습니다.
일반적으로 변경 적용 서비스는 대상 공급자가 IKnowledgeSyncProvider::ProcessChangeBatch 및 IKnowledgeSyncProvider::ProcessFullEnumerationChangeBatch 메서드를 구현하기 위해 사용합니다. 변경 적용 서비스를 사용하려면 다음 단계를 수행하십시오.
IProviderSyncServices::CreateChangeApplier 메서드에 IID_IChangeApplicationServices를 전달하여 IChangeApplicationServices 개체를 가져옵니다.
IChangeApplicationServices::Initialize를 호출하여 개체를 초기화합니다.
IChangeApplicationServices::BeginChangeApplication을 호출하여 일괄 변경 내용 처리를 시작하거나, IChangeApplicationServices::BeginFullEnumerationChangeApplication을 호출하여 복구 동기화 일괄 변경 내용 처리를 시작합니다. 일반적으로 이 메서드는 처리할 각 일괄 변경 내용에 대해 한 번 호출됩니다.
일괄 변경 내용의 변경 내용을 열거합니다. 각 변경 내용에 대해 IChangeApplicationServices::GetChangeApplicationContext를 한 번 호출하고, 반환된 IChangeApplicationContext 개체를 사용하여 변경 내용을 적용합니다.
IChangeApplicationServices::ReportItemChangeApplied 또는 IChangeApplicationServices::ReportChangeUnitChangeApplied를 호출하여 변경 내용이 성공적으로 적용된 것으로 보고하고, IChangeApplicationServices::ReportRecoverableErrorOnItemChange 또는 IChangeApplicationServices::ReportRecoverableErrorOnChangeUnitChange를 호출하여 변경 내용 적용 실패를 보고합니다.
지금까지 적용된 모든 변경 내용을 포함하는 업데이트된 대상 정보를 검색하려면 언제든지 IChangeApplicationServices::GetUpdatedDestinationKnowledge를 호출합니다.
IChangeApplicationServices::EndChangeApplication을 호출하여 일괄 변경 내용 처리를 끝내거나, IChangeApplicationServices::EndFullEnumerationChangeApplication을 호출하여 복구 동기화 일괄 변경 내용 처리를 끝냅니다. 이 메서드에서 반환되는 업데이트된 대상 정보 및 대상 잊어버린 정보 개체를 저장합니다.
대상 공급자가 받은 각 일괄 변경 내용에 대해 3-7단계를 반복합니다.
요구 사항
헤더: Synchronization.h