Hi,
The dojo.data.ItemFileWriteStore has a built-in mechanism to help developpers track pending items for updating purpose.
An internal object called _pending is initialized when the object is created:
_newItems:{},
_modifiedItems:{},
_deletedItems:{}
};
Then, when the store is updated (either by a new, update or delete operation) this object is modified accordingly.
For the update, there is a test in the _setValueOrValues function to avoid registering twice the updated item:
