Trait IKnowledgeSyncProvider_Impl
pub trait IKnowledgeSyncProvider_Impl: ISyncProvider_Impl {
// Required methods
fn BeginSession(
&self,
role: SYNC_PROVIDER_ROLE,
psessionstate: Ref<'_, ISyncSessionState>,
) -> Result<()>;
fn GetSyncBatchParameters(
&self,
ppsyncknowledge: OutRef<'_, ISyncKnowledge>,
pdwrequestedbatchsize: *mut u32,
) -> Result<()>;
fn GetChangeBatch(
&self,
dwbatchsize: u32,
psyncknowledge: Ref<'_, ISyncKnowledge>,
ppsyncchangebatch: OutRef<'_, ISyncChangeBatch>,
ppunkdataretriever: OutRef<'_, IUnknown>,
) -> Result<()>;
fn GetFullEnumerationChangeBatch(
&self,
dwbatchsize: u32,
pblowerenumerationbound: *const u8,
psyncknowledge: Ref<'_, ISyncKnowledge>,
ppsyncchangebatch: OutRef<'_, ISyncFullEnumerationChangeBatch>,
ppunkdataretriever: OutRef<'_, IUnknown>,
) -> Result<()>;
fn ProcessChangeBatch(
&self,
resolutionpolicy: CONFLICT_RESOLUTION_POLICY,
psourcechangebatch: Ref<'_, ISyncChangeBatch>,
punkdataretriever: Ref<'_, IUnknown>,
pcallback: Ref<'_, ISyncCallback>,
psyncsessionstatistics: *mut SYNC_SESSION_STATISTICS,
) -> Result<()>;
fn ProcessFullEnumerationChangeBatch(
&self,
resolutionpolicy: CONFLICT_RESOLUTION_POLICY,
psourcechangebatch: Ref<'_, ISyncFullEnumerationChangeBatch>,
punkdataretriever: Ref<'_, IUnknown>,
pcallback: Ref<'_, ISyncCallback>,
psyncsessionstatistics: *mut SYNC_SESSION_STATISTICS,
) -> Result<()>;
fn EndSession(
&self,
psessionstate: Ref<'_, ISyncSessionState>,
) -> Result<()>;
}
Required Methods§
fn BeginSession( &self, role: SYNC_PROVIDER_ROLE, psessionstate: Ref<'_, ISyncSessionState>, ) -> Result<()>
fn GetSyncBatchParameters( &self, ppsyncknowledge: OutRef<'_, ISyncKnowledge>, pdwrequestedbatchsize: *mut u32, ) -> Result<()>
fn GetChangeBatch( &self, dwbatchsize: u32, psyncknowledge: Ref<'_, ISyncKnowledge>, ppsyncchangebatch: OutRef<'_, ISyncChangeBatch>, ppunkdataretriever: OutRef<'_, IUnknown>, ) -> Result<()>
fn GetFullEnumerationChangeBatch( &self, dwbatchsize: u32, pblowerenumerationbound: *const u8, psyncknowledge: Ref<'_, ISyncKnowledge>, ppsyncchangebatch: OutRef<'_, ISyncFullEnumerationChangeBatch>, ppunkdataretriever: OutRef<'_, IUnknown>, ) -> Result<()>
fn ProcessChangeBatch( &self, resolutionpolicy: CONFLICT_RESOLUTION_POLICY, psourcechangebatch: Ref<'_, ISyncChangeBatch>, punkdataretriever: Ref<'_, IUnknown>, pcallback: Ref<'_, ISyncCallback>, psyncsessionstatistics: *mut SYNC_SESSION_STATISTICS, ) -> Result<()>
fn ProcessFullEnumerationChangeBatch( &self, resolutionpolicy: CONFLICT_RESOLUTION_POLICY, psourcechangebatch: Ref<'_, ISyncFullEnumerationChangeBatch>, punkdataretriever: Ref<'_, IUnknown>, pcallback: Ref<'_, ISyncCallback>, psyncsessionstatistics: *mut SYNC_SESSION_STATISTICS, ) -> Result<()>
fn EndSession(&self, psessionstate: Ref<'_, ISyncSessionState>) -> Result<()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.