3.2.4.2.17.4 CommitAndUpdateDerived (Opnum 30)

The CommitAndUpdateDerived method commits the quota template and applies the template's changes to the quota objects derived from auto apply quota.

 [id (FSRM_DISPID_AUTOAPPLYQUOTA | 0x01)] HRESULT CommitAndUpdateDerived(
   [in] FsrmCommitOptions commitOptions,
   [in] FsrmTemplateApplyOptions applyOptions,
   [out, retval] IFsrmDerivedObjectsResult** derivedObjectsResult
 );

commitOptions: Contains the commit options to use when committing the collection of derived objects.

applyOptions: Contains the apply options to use when building the collection of derived objects.

derivedObjectsResult: Pointer to an IFsrmDerivedObjectsResult interface pointer (section 3.2.4.2.13) that upon completion points to derived objects result interface for the derived objects updated with this method. A caller MUST release the collection received when it is done with it.

Return Values: The method MUST return zero on success, or a nonzero error code on failure.

Return value/code

Description

0x80045311

FSRM_E_NOT_SUPPORTED

The commitOptions parameter contains invalid FsrmCommitOptions (section 2.2.1.2.6) values.

0x80070057

E_INVALIDARG

The derivedObjectsResult parameter is NULL.

Upon receiving this message, the server MUST validate parameters:

  • If commitOptions contains FsrmCommitOptions_Asynchronous or any value other than what is specified in section 2.2.1.2.6, the server MUST return FSRM_E_NOT_SUPPORTED.

  • If derivedObjectsResult is NULL, the server MUST return E_INVALIDARG.

The server MUST commit the quota template<59> and apply the template's new properties to the collection of derived objects based on applyOptions or return a nonzero error code.

If applyOptions equals FsrmTemplateApplyOptions_ApplyToDerivedAll, the server MUST update derivedObjectsResult with all quota objects that were derived from this auto apply quota.

If applyOptions equals FsrmTemplateApplyOptions_ApplyToDerivedMatching, the server MUST update derivedObjectsResult with only those quota objects that were derived from this auto apply quota and whose properties still match this auto apply quota.