Skip to content

Commit d6ce0b3

Browse files
committed
refactor: Move getPrefixWithProcessingPriority to separate function and fix clearRepo
1 parent c715c53 commit d6ce0b3

4 files changed

Lines changed: 32 additions & 21 deletions

File tree

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,21 @@
1+
import { StatementProcessingPriority } from '../../../enums/statementProcessingPriority.enum';
2+
import { EVENT_NAME } from '../utils/constants';
3+
import { getPrefixWithProcessingPriority } from '../utils/getPrefixWithProcessingPriority';
14
import FacadeConfig from '../utils/redisEvents/FacadeConfig';
25

3-
const EVENT_NAME = 'statement.new';
4-
56
export default (config: FacadeConfig) => {
67
return async (): Promise<void> => {
78
const client = await config.client();
8-
const listName = `${config.prefix}:${EVENT_NAME}`;
9-
await client.del(listName);
9+
10+
await Promise.all(
11+
Object.values(StatementProcessingPriority).map((statementProcessingPriority) => {
12+
const listName = `${getPrefixWithProcessingPriority(
13+
config.prefix,
14+
statementProcessingPriority,
15+
)}:${EVENT_NAME}`;
16+
17+
return client.del(listName);
18+
}),
19+
);
1020
};
1121
};

src/apps/statements/repo/eventsRepo/emitNewStatements/redis.ts

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,8 @@
1-
import { StatementProcessingPriority } from '../../../enums/statementProcessingPriority.enum';
1+
import { CHANNEL_NAME, EVENT_NAME } from '../utils/constants';
2+
import { getPrefixWithProcessingPriority } from '../utils/getPrefixWithProcessingPriority';
23
import FacadeConfig from '../utils/redisEvents/FacadeConfig';
34
import Signature from './Signature';
45

5-
const EVENT_NAME = 'statement.new';
6-
const CHANNEL_NAME = 'statement.notify';
7-
8-
const getPrefixWithProcessingPriority = (
9-
originalPrefix: string,
10-
priority: StatementProcessingPriority,
11-
): string => {
12-
switch (priority) {
13-
case StatementProcessingPriority.LOW:
14-
return `${originalPrefix}_${StatementProcessingPriority.LOW}`;
15-
case StatementProcessingPriority.MEDIUM:
16-
default:
17-
return originalPrefix;
18-
}
19-
};
20-
216
export default (config: FacadeConfig): Signature => {
227
return async ({ statementProperties, priority }) => {
238
const client = await config.client();
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export const EVENT_NAME = 'statement.new';
2+
export const CHANNEL_NAME = 'statement.notify';
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import { StatementProcessingPriority } from '../../../enums/statementProcessingPriority.enum';
2+
3+
export const getPrefixWithProcessingPriority = (
4+
originalPrefix: string,
5+
priority: StatementProcessingPriority,
6+
): string => {
7+
switch (priority) {
8+
case StatementProcessingPriority.LOW:
9+
return `${originalPrefix}_${StatementProcessingPriority.LOW}`;
10+
case StatementProcessingPriority.MEDIUM:
11+
default:
12+
return originalPrefix;
13+
}
14+
};

0 commit comments

Comments
 (0)