Session: How to Defer Operations
Operations can be deferred till saveChanges()
is called by using defer()
method in advanced
session operations. There are three types of commands that can be deferred:
- PutCommandData
- DeleteCommandData
- DeletePrefixedCommandData
- PatchCommandData
- PutAttachmentCommandData
- DeleteAttachmentCommandData
Syntax
session.advanced.defer(...commands);
Parameters | ||
---|---|---|
commands | ICommandData[] |
Command objects implementing ICommandData interface. |
Example
const value1 = {
"name": "My Product",
"supplier": "suppliers/999-A",
"@metadata": {
"@collection": "Users"
}
};
const putCommand1 =
new PutCommandDataWithJson("products/999-A",
null,
value1);
const value2 = {
"name": "My Product",
"supplier": "suppliers/999-A",
"@metadata": {
"@collection": "Suppliers"
}
};
const putCommand2 =
new PutCommandDataWithJson("suppliers/999-A",
null,
value2);
const command3 = new DeleteCommandData("products/1-A", null);
session.advanced.defer(putCommand1, putCommand2, command3);