msetnx #
Sets the provided keys to their respective values, only if they do not exist. If a key exists, then the whole operation is aborted and no key is set.
Arguments #
msetnx(entries, [options]);
Arguments | Type | Description |
---|---|---|
entries | object[] | List of key-value pairs to set |
options | object | Optional query arguments |
entries #
The entries
argument is an array of objects. Each object is a key-value pair, defined with the following properties:
Property | Type | Description |
---|---|---|
key | string | Key |
value | * | Value |
options #
The options
arguments can contain the following option properties:
Property | Type (default) | Description |
---|---|---|
queuable | boolean (true) | If true , queues the request during downtime, until connected to Kuzzle again |
timeout | number ( -1 ) | Time (in ms) during which a request will still be waited to be resolved. Set it -1 if you want to wait indefinitely |
triggerEvents | boolean ( false ) | If set to true , will trigger events even if using Embeded SDK. You should always ensure that your events/pipes does not create an infinite loop. Available since Kuzzle 2.31.0 |
Resolve #
Resolves to a boolean telling whether the keys have been set or not.
Usage #
const entries = [
{ key: 'hello', value: 'world' },
{ key: 'foo', value: 'bar' }
];
try {
await kuzzle.ms.set('foo', 'bar');
// Prints: false
// (the entire operation aborted)
console.log(await kuzzle.ms.msetnx(entries));
await kuzzle.ms.del('foo');
// Prints: true
console.log(await kuzzle.ms.msetnx(entries));
} catch (error) {
console.error(error.message);
}
Edit this page on Github(opens new window)