3.2.4.2.44.1 Commit (Opnum 11)

The Commit method is implemented as one of the methods for the IFsrmObject interface (section 3.2.4.2.10). This method has the behavior specified in section 3.2.4.2.10.5 with the following additions:

  • If the Module Definition.Name is an empty string, the server MUST return FSRM_E_REQD_PARAM_MISSING.

  • If ModuleClsid is an empty string, the server MUST return FSRM_E_REQD_PARAM_MISSING.

  • If FSRM Base Object.Deleted is set to true for this Non-Persisted Module Definition Instance (section 3.2.1.6.2.2), the server MUST remove the Persisted Module Definition (section 3.2.1.6.2.1) from the List of Persisted Module Definitions (section 3.2.1.6) that has the same Module Definition.Name as this Non-Persisted Module Definition Instance, if one exists. This removal MUST occur even if other changes were made to the configuration of the Non-Persisted Module Definition Instance. If there is no Persisted Module Definition in List of Persisted Module Definitions that has the same Module Definition.Name as this Non-Persisted Module Definition Instance being deleted, the server doesn’t perform any action and MUST return zero. The server MUST return a nonzero error code if removal fails.

  • If FSRM Base Object.Deleted is set to false for this Non-Persisted Module Definition Instance, the server MUST update the configuration data of the Persisted Module Definition in the List of Persisted Module Definitions that has the same Module Definition.Name as this Non-Persisted Module Definition Instance, if one exists, with the configuration data from this instance, or return a nonzero error code.

  • If a Persisted Module Definition does not exist with the same Module Definition.Name and with FSRM Base Object.Deleted is set to false, the server MUST create a new Persisted Module Definition, populate its configuration with the configuration from this Non-Persisted Module Definition Instance, and add the new Persisted Module Definition to the List of Persisted Module Definitions.

To update or populate the configuration data from Non-Persisted Module Definition Instance to a Persisted Module Definition, the server MUST assign the values of all the properties in the list that follows, of the Non-Persisted Module Definition Instance to the corresponding properties of the Persisted Module Definition.

  • FSRM Base Object.Description

  • ModuleClsid

  • Module Definition.Name

  • Company

  • Version

  • Enabled/disabled

  • Needs file content

  • Module Definition.Account

  • Supported extensions

  • Module Definition.Parameters

  • Properties affected

  • Properties used

  • Needs explicit value