3.2.1.3 List of Tasks Currently Executed on the Server

For each task that is pending on the server, the list MUST contain the following data elements:

taskId:  Unique identifier (UID) of type LdmObjectId associated with the task for the entire lifetime of the task. The identifier is assigned by the server and used by the client to map notifications received from the server via IDMNotify to specific commands requested by it to follow the progress of those commands. The server MUST NOT change the identifier and MUST NOT assign it to another task until the server shuts down. The identifier does not need to be persisted across separate server sessions.

info: Structure of type TASK_INFO containing details about the task, such as creation time, the identifier of the client that requested the task, the storage object affected by the task, status, and progress percentage.

The list is empty at server initialization time. Tasks are added to the list as a result of clients requesting configuration operations via the protocol commands. Tasks are removed from the list as they are completed.