다음을 통해 공유


IRequestFilteredSync::SpecifyFilter

파생 클래스에 의해 구현되는 경우 변경 내용을 열거하는 동안 원본 공급자에 사용되는 필터를 결정합니다.

HRESULT SpecifyFilter(
  IFilterRequestCallback * pCallback);

매개 변수

  • pCallback
    [in] 변경 내용을 열거하는 동안 원본 공급자가 필터를 사용하도록 요청하기 위해 대상 공급자에 사용되는 콜백 인터페이스입니다.

반환 값

  • S_OK

  • 공급자 고유의 오류 코드입니다.

주의

다음 단계를 통해 필터가 결정됩니다.

  1. 원본 공급자가 변경 내용 열거 작업을 시작하기 전에 Sync Framework에서 대상 공급자에 대해 IRequestFilteredSync::SpecifyFilter를 호출하여 필터 결정을 시작합니다.

  2. IRequestFilteredSync::SpecifyFilter를 처리하는 동안 대상 공급자가 IFilterRequestCallback::RequestFilter에 필터를 전달합니다.

  3. IFilterRequestCallback::RequestFilter를 처리하는 동안 Sync Framework에서 원본 공급자에 대해 ISupportFilteredSync::AddFilter를 호출합니다. 원본 공급자에 지원되지 않는 필터를 요청한 경우 대상 공급자는 지원되는 필터를 찾을 때까지 계속 필터를 요청할 수 있습니다.

필터가 결정되면 원본 공급자에서 이 필터를 사용하여 변경 내용 열거 작업에 포함할 항목을 지정합니다.

구현자를 위한 정보

이 메서드를 구현하면 대상 공급자와 원본 공급자에서 모두 지원되는 필터를 찾을 때까지 IFilterRequestCallback::RequestFilter를 계속 호출할 수 있습니다. 원본 공급자는 ISupportFilteredSync::AddFilter 호출에 대한 응답으로 SYNC_E_FILTER_NOT_SUPPORTED를 반환하여 필터를 지원하지 않음을 나타냅니다.

ISupportFilteredSync::AddFilter를 호출한 결과로 SYNC_E_FILTER_NOT_SUPPORTED 이외의 오류가 반환되면 IRequestFilteredSync::SpecifyFilter에서 Sync Framework에 오류를 반환해야 합니다. 그러면 동기화 세션이 끝납니다.

참고 항목

참조

IRequestFilteredSync 인터페이스
ISupportFilteredSync 인터페이스
IFilterRequestCallback 인터페이스