@redis/client
Advanced tools
Comparing version 1.4.1 to 1.4.2
@@ -87,3 +87,4 @@ /// <reference types="node" /> | ||
executeIsolated<T>(fn: (client: RedisClientType<M, F, S>) => T | Promise<T>): Promise<T>; | ||
multi(): RedisClientMultiCommandType<M, F, S>; | ||
MULTI(): RedisClientMultiCommandType<M, F, S>; | ||
multi: () => RedisClientMultiCommandType<M, F, S>; | ||
multiExecutor(commands: Array<RedisMultiQueuedCommand>, selectedDB?: number, chainId?: symbol): Promise<Array<RedisCommandRawReply>>; | ||
@@ -90,0 +91,0 @@ scanIterator(options?: ScanCommandOptions): AsyncIterable<string>; |
@@ -78,2 +78,8 @@ "use strict"; | ||
}); | ||
Object.defineProperty(this, "multi", { | ||
enumerable: true, | ||
configurable: true, | ||
writable: true, | ||
value: this.MULTI | ||
}); | ||
__classPrivateFieldSet(this, _RedisClient_options, __classPrivateFieldGet(this, _RedisClient_instances, "m", _RedisClient_initiateOptions).call(this, options), "f"); | ||
@@ -241,3 +247,3 @@ __classPrivateFieldSet(this, _RedisClient_queue, __classPrivateFieldGet(this, _RedisClient_instances, "m", _RedisClient_initiateQueue).call(this), "f"); | ||
} | ||
multi() { | ||
MULTI() { | ||
return new this.Multi(this.multiExecutor.bind(this), __classPrivateFieldGet(this, _RedisClient_options, "f")?.legacyMode); | ||
@@ -244,0 +250,0 @@ } |
@@ -13,3 +13,3 @@ "use strict"; | ||
}; | ||
var _RedisSocket_instances, _a, _RedisSocket_initiateOptions, _RedisSocket_isTlsSocket, _RedisSocket_initiator, _RedisSocket_options, _RedisSocket_socket, _RedisSocket_isOpen, _RedisSocket_isReady, _RedisSocket_writableNeedDrain, _RedisSocket_isSocketUnrefed, _RedisSocket_connect, _RedisSocket_createSocket, _RedisSocket_createNetSocket, _RedisSocket_createTlsSocket, _RedisSocket_onSocketError, _RedisSocket_isCorked; | ||
var _RedisSocket_instances, _a, _RedisSocket_initiateOptions, _RedisSocket_isTlsSocket, _RedisSocket_initiator, _RedisSocket_options, _RedisSocket_socket, _RedisSocket_isOpen, _RedisSocket_isReady, _RedisSocket_writableNeedDrain, _RedisSocket_isSocketUnrefed, _RedisSocket_connect, _RedisSocket_createSocket, _RedisSocket_createNetSocket, _RedisSocket_createTlsSocket, _RedisSocket_onSocketError, _RedisSocket_disconnect, _RedisSocket_isCorked; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
@@ -66,2 +66,3 @@ const events_1 = require("events"); | ||
} | ||
__classPrivateFieldSet(this, _RedisSocket_isOpen, true, "f"); | ||
return __classPrivateFieldGet(this, _RedisSocket_instances, "m", _RedisSocket_connect).call(this); | ||
@@ -78,11 +79,7 @@ } | ||
disconnect() { | ||
if (!__classPrivateFieldGet(this, _RedisSocket_socket, "f")) { | ||
if (!__classPrivateFieldGet(this, _RedisSocket_isOpen, "f")) { | ||
throw new errors_1.ClientClosedError(); | ||
} | ||
else { | ||
__classPrivateFieldSet(this, _RedisSocket_isOpen, __classPrivateFieldSet(this, _RedisSocket_isReady, false, "f"), "f"); | ||
} | ||
__classPrivateFieldGet(this, _RedisSocket_socket, "f").destroy(); | ||
__classPrivateFieldSet(this, _RedisSocket_socket, undefined, "f"); | ||
this.emit('end'); | ||
__classPrivateFieldSet(this, _RedisSocket_isOpen, false, "f"); | ||
__classPrivateFieldGet(this, _RedisSocket_instances, "m", _RedisSocket_disconnect).call(this); | ||
} | ||
@@ -95,3 +92,3 @@ async quit(fn) { | ||
await fn(); | ||
this.disconnect(); | ||
__classPrivateFieldGet(this, _RedisSocket_instances, "m", _RedisSocket_disconnect).call(this); | ||
} | ||
@@ -139,3 +136,2 @@ cork() { | ||
try { | ||
__classPrivateFieldSet(this, _RedisSocket_isOpen, true, "f"); | ||
__classPrivateFieldSet(this, _RedisSocket_socket, await __classPrivateFieldGet(this, _RedisSocket_instances, "m", _RedisSocket_createSocket).call(this), "f"); | ||
@@ -166,3 +162,3 @@ __classPrivateFieldSet(this, _RedisSocket_writableNeedDrain, false, "f"); | ||
retries++; | ||
} while (!__classPrivateFieldGet(this, _RedisSocket_isReady, "f")); | ||
} while (__classPrivateFieldGet(this, _RedisSocket_isOpen, "f") && !__classPrivateFieldGet(this, _RedisSocket_isReady, "f")); | ||
}, _RedisSocket_createSocket = function _RedisSocket_createSocket() { | ||
@@ -215,5 +211,14 @@ return new Promise((resolve, reject) => { | ||
this.emit('error', err); | ||
if (!__classPrivateFieldGet(this, _RedisSocket_isOpen, "f")) | ||
return; | ||
__classPrivateFieldGet(this, _RedisSocket_instances, "m", _RedisSocket_connect).call(this, true).catch(() => { | ||
// the error was already emitted, silently ignore it | ||
}); | ||
}, _RedisSocket_disconnect = function _RedisSocket_disconnect() { | ||
__classPrivateFieldSet(this, _RedisSocket_isReady, false, "f"); | ||
if (__classPrivateFieldGet(this, _RedisSocket_socket, "f")) { | ||
__classPrivateFieldGet(this, _RedisSocket_socket, "f").destroy(); | ||
__classPrivateFieldSet(this, _RedisSocket_socket, undefined, "f"); | ||
} | ||
this.emit('end'); | ||
}; |
@@ -33,3 +33,4 @@ /// <reference types="node" /> | ||
executeScript(script: RedisScript, originalArgs: Array<unknown>, redisArgs: RedisCommandArguments, options?: ClientCommandOptions): Promise<RedisCommandRawReply>; | ||
multi(routing?: RedisCommandArgument): RedisClusterMultiCommandType<M, F, S>; | ||
MULTI(routing?: RedisCommandArgument): RedisClusterMultiCommandType<M, F, S>; | ||
multi: (routing?: RedisCommandArgument) => RedisClusterMultiCommandType<M, F, S>; | ||
getMasters(): Array<ClusterNode<M, F, S>>; | ||
@@ -36,0 +37,0 @@ getSlotMaster(slot: number): ClusterNode<M, F, S>; |
@@ -27,2 +27,8 @@ "use strict"; | ||
_RedisCluster_Multi.set(this, void 0); | ||
Object.defineProperty(this, "multi", { | ||
enumerable: true, | ||
configurable: true, | ||
writable: true, | ||
value: this.MULTI | ||
}); | ||
__classPrivateFieldSet(this, _RedisCluster_options, options, "f"); | ||
@@ -82,3 +88,3 @@ __classPrivateFieldSet(this, _RedisCluster_slots, new cluster_slots_1.default(options, err => this.emit('error', err)), "f"); | ||
} | ||
multi(routing) { | ||
MULTI(routing) { | ||
return new (__classPrivateFieldGet(this, _RedisCluster_Multi, "f"))((commands, firstKey, chainId) => { | ||
@@ -85,0 +91,0 @@ return __classPrivateFieldGet(this, _RedisCluster_instances, "m", _RedisCluster_execute).call(this, firstKey, false, client => client.multiExecutor(commands, undefined, chainId)); |
{ | ||
"name": "@redis/client", | ||
"version": "1.4.1", | ||
"version": "1.4.2", | ||
"license": "MIT", | ||
@@ -5,0 +5,0 @@ "main": "./dist/index.js", |
541672
12133