IProviderSyncServices2::CreateLoggedConflict

Creates an ILoggedConflict object that represents a logged conflict.

Syntax

HRESULT CreateLoggedConflict(
  BOOL fConstraint,
  ISyncChange * pChange,
  BYTE * pConflictingItemId,
  CONSTRAINT_CONFLICT_REASON constraintConflictReason,
  IUnknown * pUnkData,
  ISyncKnowledge * pConflictKnowledge,
  ISyncKnowledge * pMadeWithKnowledge,
  BOOL fTemporary,
  ILoggedConflict ** ppLoggedConflict);

Parameters

  • fConstraint
    [in] TRUE if this conflict represents a constraint conflict. Otherwise, FALSE.

  • pChange
    [in] The item metadata for the conflicting change from the source provider.

  • pConflictingItemId
    [in] The item ID of the item in the destination replica that conflicts with the item specified by pChange when this conflict is a constraint conflict. This value must be NULL when fConstraint is FALSE.

  • constraintConflictReason
    [in] The reason the conflict occurred when this conflict is a constraint conflict. This value is ignored when fConstraint is FALSE.

  • pUnkData
    [in] The item data for pChange when item data exists.

  • pConflictKnowledge
    [in] The knowledge to be learned if this change is applied.

  • pMadeWithKnowledge
    [in] The made-with knowledge for this change. The made-with knowledge for a change is typically the knowledge that the replica had when this change was made.

  • fTemporary
    [in] TRUE if this is a temporary conflict. Otherwise, FALSE.

  • ppLoggedConflict
    [out] The newly created ILoggedConflict object.

Return Value

  • S_OK.

  • E_INVALIDARG when fConstraint indicates that this conflict is not a constraint conflict and pConflictingItemId is not NULL; or pConflictingItemId is not a valid ID; or constraintConflictReason is not a valid value.

  • E_OUTOFMEMORY.

  • E_POINTER.

  • SYNC_E_INVALID_OPERATION when this object has not been initialized.

Remarks

The returned ILoggedConflict object adds references to the conflict knowledge and made-with knowledge objects that are passed in pConflictKnowledge and pMadeWithKnowledge, but does not clone them.

See Also

Reference

IProviderSyncServices2 Interface