2021-04-21 20:27:39 +02:00
|
|
|
import { RequestWithUser } from '@ghostfolio/api/app/interfaces/request-with-user.type';
|
2021-04-13 21:53:58 +02:00
|
|
|
import { Controller, Inject, Param, Post, UseGuards } from '@nestjs/common';
|
|
|
|
import { REQUEST } from '@nestjs/core';
|
|
|
|
import { AuthGuard } from '@nestjs/passport';
|
|
|
|
|
|
|
|
import { RedisCacheService } from '../redis-cache/redis-cache.service';
|
|
|
|
import { CacheService } from './cache.service';
|
|
|
|
|
|
|
|
@Controller('cache')
|
|
|
|
export class CacheController {
|
|
|
|
public constructor(
|
|
|
|
private readonly cacheService: CacheService,
|
|
|
|
private readonly redisCacheService: RedisCacheService,
|
|
|
|
@Inject(REQUEST) private readonly request: RequestWithUser
|
|
|
|
) {
|
|
|
|
this.redisCacheService.reset();
|
|
|
|
}
|
|
|
|
|
|
|
|
@Post('flush')
|
|
|
|
@UseGuards(AuthGuard('jwt'))
|
|
|
|
public async flushCache(): Promise<void> {
|
|
|
|
this.redisCacheService.reset();
|
|
|
|
|
|
|
|
return this.cacheService.flush(this.request.user.id);
|
|
|
|
}
|
|
|
|
}
|