summaryrefslogtreecommitdiff
path: root/packages/backend/src/GlobalModule.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/backend/src/GlobalModule.ts')
-rw-r--r--packages/backend/src/GlobalModule.ts14
1 files changed, 12 insertions, 2 deletions
diff --git a/packages/backend/src/GlobalModule.ts b/packages/backend/src/GlobalModule.ts
index ace7f7841c..7ca566477d 100644
--- a/packages/backend/src/GlobalModule.ts
+++ b/packages/backend/src/GlobalModule.ts
@@ -92,6 +92,14 @@ const $redisForReactions: Provider = {
inject: [DI.config],
};
+const $redisForRateLimit: Provider = {
+ provide: DI.redisForRateLimit,
+ useFactory: (config: Config) => {
+ return new Redis.Redis(config.redisForRateLimit);
+ },
+ inject: [DI.config],
+};
+
const $meta: Provider = {
provide: DI.meta,
useFactory: async (db: DataSource, redisForSub: Redis.Redis) => {
@@ -152,8 +160,8 @@ const $meta: Provider = {
@Global()
@Module({
imports: [RepositoryModule],
- providers: [$config, $db, $meta, $meilisearch, $redis, $redisForPub, $redisForSub, $redisForTimelines, $redisForReactions],
- exports: [$config, $db, $meta, $meilisearch, $redis, $redisForPub, $redisForSub, $redisForTimelines, $redisForReactions, RepositoryModule],
+ providers: [$config, $db, $meta, $meilisearch, $redis, $redisForPub, $redisForSub, $redisForTimelines, $redisForReactions, $redisForRateLimit],
+ exports: [$config, $db, $meta, $meilisearch, $redis, $redisForPub, $redisForSub, $redisForTimelines, $redisForReactions, $redisForRateLimit, RepositoryModule],
})
export class GlobalModule implements OnApplicationShutdown {
constructor(
@@ -163,6 +171,7 @@ export class GlobalModule implements OnApplicationShutdown {
@Inject(DI.redisForSub) private redisForSub: Redis.Redis,
@Inject(DI.redisForTimelines) private redisForTimelines: Redis.Redis,
@Inject(DI.redisForReactions) private redisForReactions: Redis.Redis,
+ @Inject(DI.redisForRateLimit) private redisForRateLimit: Redis.Redis,
) { }
public async dispose(): Promise<void> {
@@ -176,6 +185,7 @@ export class GlobalModule implements OnApplicationShutdown {
this.redisForSub.disconnect(),
this.redisForTimelines.disconnect(),
this.redisForReactions.disconnect(),
+ this.redisForRateLimit.disconnect(),
]);
}