Skip to content

Commit 5b26682

Browse files
committed
refactor: extract events
1 parent 1392f94 commit 5b26682

File tree

2 files changed

+18
-9
lines changed

2 files changed

+18
-9
lines changed

packages/client/lib/client/enterprise-maintenance-manager.ts

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,12 @@ import { RedisClientOptions } from ".";
33
import RedisCommandsQueue from "./commands-queue";
44
import RedisSocket from "./socket";
55

6+
export const MAINTENANCE_EVENTS = {
7+
PAUSE_WRITING: "pause-writing",
8+
RESUME_WRITING: "resume-writing",
9+
TIMEOUTS_UPDATE: "timeouts-update",
10+
} as const;
11+
612
export default class EnterpriseMaintenanceManager extends EventEmitter {
713
#commandsQueue: RedisCommandsQueue;
814
#options: RedisClientOptions;
@@ -33,7 +39,7 @@ export default class EnterpriseMaintenanceManager extends EventEmitter {
3339
return true;
3440
}
3541
}
36-
return false
42+
return false;
3743
};
3844

3945
// Queue:
@@ -55,7 +61,7 @@ export default class EnterpriseMaintenanceManager extends EventEmitter {
5561
): Promise<void> => {
5662
// 1 [EVENT] MOVING PN received
5763
// 2 [ACTION] Pause writing
58-
this.emit("pause");
64+
this.emit(MAINTENANCE_EVENTS.PAUSE_WRITING);
5965

6066
const newSocket = new RedisSocket({
6167
...this.#options.socket,
@@ -71,17 +77,20 @@ export default class EnterpriseMaintenanceManager extends EventEmitter {
7177
// 4 [EVENT] In-flight commands completed
7278

7379
// 5 + 6
74-
this.emit("resume", newSocket);
80+
this.emit(MAINTENANCE_EVENTS.RESUME_WRITING, newSocket);
7581
};
7682

7783
#onMigrating = async () => {
7884
this.#commandsQueue.setMaintenanceCommandTimeout(this.#getCommandTimeout());
79-
this.emit("maintenance", this.#getSocketTimeout());
85+
this.emit(
86+
MAINTENANCE_EVENTS.TIMEOUTS_UPDATE,
87+
this.#getSocketTimeout(),
88+
);
8089
};
8190

8291
#onMigrated = async () => {
8392
this.#commandsQueue.setMaintenanceCommandTimeout(undefined);
84-
this.emit("maintenance", undefined);
93+
this.emit(MAINTENANCE_EVENTS.TIMEOUTS_UPDATE, undefined);
8594
};
8695

8796
#getSocketTimeout(): number | undefined {

packages/client/lib/client/index.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import { BasicClientSideCache, ClientSideCacheConfig, ClientSideCacheProvider }
2020
import { BasicCommandParser, CommandParser } from './parser';
2121
import SingleEntryCache from '../single-entry-cache';
2222
import { version } from '../../package.json'
23-
import EnterpriseMaintenanceManager from './enterprise-maintenance-manager';
23+
import EnterpriseMaintenanceManager, { MAINTENANCE_EVENTS } from './enterprise-maintenance-manager';
2424

2525
export interface RedisClientOptions<
2626
M extends RedisModules = RedisModules,
@@ -488,9 +488,9 @@ export default class RedisClient<
488488

489489
if(options?.gracefulMaintenance) {
490490
new EnterpriseMaintenanceManager(this.#queue, this.#options!)
491-
.on('pause', () => this._self.#pausedForMaintenance = true )
492-
.on('resume', this.#resumeFromMaintenance.bind(this))
493-
.on('maintenance', (mtm: number | undefined) => this._self.#socket.setMaintenanceTimeout(mtm))
491+
.on(MAINTENANCE_EVENTS.PAUSE_WRITING, () => this._self.#pausedForMaintenance = true )
492+
.on(MAINTENANCE_EVENTS.RESUME_WRITING, this.#resumeFromMaintenance.bind(this))
493+
.on(MAINTENANCE_EVENTS.TIMEOUTS_UPDATE, (mtm: number | undefined) => this._self.#socket.setMaintenanceTimeout(mtm))
494494
}
495495

496496
if (options?.clientSideCache) {

0 commit comments

Comments
 (0)