wip
This commit is contained in:
		| @@ -70,11 +70,19 @@ const $redisForSub: Provider = { | ||||
| 	inject: [DI.config], | ||||
| }; | ||||
|  | ||||
| const $redisForTimelines: Provider = { | ||||
| 	provide: DI.redisForTimelines, | ||||
| 	useFactory: (config: Config) => { | ||||
| 		return new Redis.Redis(config.redisForTimelines); | ||||
| 	}, | ||||
| 	inject: [DI.config], | ||||
| }; | ||||
|  | ||||
| @Global() | ||||
| @Module({ | ||||
| 	imports: [RepositoryModule], | ||||
| 	providers: [$config, $db, $meilisearch, $redis, $redisForPub, $redisForSub], | ||||
| 	exports: [$config, $db, $meilisearch, $redis, $redisForPub, $redisForSub, RepositoryModule], | ||||
| 	providers: [$config, $db, $meilisearch, $redis, $redisForPub, $redisForSub, $redisForTimelines], | ||||
| 	exports: [$config, $db, $meilisearch, $redis, $redisForPub, $redisForSub, $redisForTimelines, RepositoryModule], | ||||
| }) | ||||
| export class GlobalModule implements OnApplicationShutdown { | ||||
| 	constructor( | ||||
| @@ -82,6 +90,7 @@ export class GlobalModule implements OnApplicationShutdown { | ||||
| 		@Inject(DI.redis) private redisClient: Redis.Redis, | ||||
| 		@Inject(DI.redisForPub) private redisForPub: Redis.Redis, | ||||
| 		@Inject(DI.redisForSub) private redisForSub: Redis.Redis, | ||||
| 		@Inject(DI.redisForTimelines) private redisForTimelines: Redis.Redis, | ||||
| 	) {} | ||||
|  | ||||
| 	public async dispose(): Promise<void> { | ||||
| @@ -98,6 +107,7 @@ export class GlobalModule implements OnApplicationShutdown { | ||||
| 			this.redisClient.disconnect(), | ||||
| 			this.redisForPub.disconnect(), | ||||
| 			this.redisForSub.disconnect(), | ||||
| 			this.redisForTimelines.disconnect(), | ||||
| 		]); | ||||
| 	} | ||||
|  | ||||
|   | ||||
| @@ -47,6 +47,7 @@ type Source = { | ||||
| 	redis: RedisOptionsSource; | ||||
| 	redisForPubsub?: RedisOptionsSource; | ||||
| 	redisForJobQueue?: RedisOptionsSource; | ||||
| 	redisForTimelines?: RedisOptionsSource; | ||||
| 	meilisearch?: { | ||||
| 		host: string; | ||||
| 		port: string; | ||||
| @@ -161,6 +162,7 @@ export type Config = { | ||||
| 	redis: RedisOptions & RedisOptionsSource; | ||||
| 	redisForPubsub: RedisOptions & RedisOptionsSource; | ||||
| 	redisForJobQueue: RedisOptions & RedisOptionsSource; | ||||
| 	redisForTimelines: RedisOptions & RedisOptionsSource; | ||||
| 	perChannelMaxNoteCacheCount: number; | ||||
| 	perUserNotificationsMaxCount: number; | ||||
| 	deactivateAntennaThreshold: number; | ||||
| @@ -227,6 +229,7 @@ export function loadConfig(): Config { | ||||
| 		redis, | ||||
| 		redisForPubsub: config.redisForPubsub ? convertRedisOptions(config.redisForPubsub, host) : redis, | ||||
| 		redisForJobQueue: config.redisForJobQueue ? convertRedisOptions(config.redisForJobQueue, host) : redis, | ||||
| 		redisForTimelines: config.redisForTimelines ? convertRedisOptions(config.redisForTimelines, host) : redis, | ||||
| 		id: config.id, | ||||
| 		proxy: config.proxy, | ||||
| 		proxySmtp: config.proxySmtp, | ||||
|   | ||||
| @@ -10,6 +10,7 @@ export const DI = { | ||||
| 	redis: Symbol('redis'), | ||||
| 	redisForPub: Symbol('redisForPub'), | ||||
| 	redisForSub: Symbol('redisForSub'), | ||||
| 	redisForTimelines: Symbol('redisForTimelines'), | ||||
|  | ||||
| 	//#region Repositories | ||||
| 	usersRepository: Symbol('usersRepository'), | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 syuilo
					syuilo