3.2.4.2.25.1 CreateFileGroup (Opnum 7)

The CreateFileGroup method creates a blank Non-Persisted File Group Instance (section 3.2.1.3.4.2).

 [id(FSRM_DISPID_FILEGROUP_MANAGER | 0x01)] HRESULT CreateFileGroup(
   [out, retval] IFsrmFileGroup** fileGroup
 );

fileGroup: Pointer to an IFsrmFileGroup interface pointer (section 3.2.4.2.23) that upon completion points to a blank file group. To have the server add the file group to its List of Persisted File Groups (section 3.2.1.3), the caller MUST call Commit (section 3.2.4.2.23.1) on the file group. The caller MUST release the file group 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

0x80070057

E_INVALIDARG

The fileGroup parameter is NULL.

Upon receiving this message, the server MUST validate parameters:

  • Verify that fileGroup is not NULL.

If any validation fails, the server MUST terminate processing and return a nonzero error code.

Upon successful validation of parameters, the server MUST perform the following actions.

  • Create a new Non-Persisted File Group Instance.

    • Set FSRM Base Object.Id to a globally unique identifier.

    • Set File Group.Name to an empty string.

    • Set Members to an empty list.

    • Set Non-members to an empty list.

  • Set fileGroup to the IFsrmFileGroup interface pointer for the newly created instance.

The new Non-Persisted File Group Instance MUST NOT be associated with an existing Persisted File Group (section 3.2.1.3.4.1).