@n1k1t/mock-server
Version:
The ultimate toolkit to intercept, transform, and simulate HTTP/WS traffic with type-safe expectations
35 lines • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const models_1 = require("../models");
const utils_1 = require("../utils");
const logger_1 = require("../../logger");
const logger = logger_1.Logger.build('Endpoints.CacheDelete');
exports.default = models_1.EndpointFactory
.build()
.http({ method: 'DELETE', path: `/cache` })
.io({ path: 'cache:delete' })
.compile(async ({ incoming, reply, server }) => {
const result = {
...(server.databases.redis && {
redis: {
count: 0,
},
}),
};
if (result.redis) {
const converter = utils_1.RxConverter.build(server.services.redis.iterate(incoming.data?.prefix ?? '*', {
trim: true,
}));
for await (const key of converter.iterate()) {
const deleted = await server.databases.redis.del(key).catch((error) => {
logger.error(`Got error while deletion redis value for key [${key}]`, error?.stack ?? error);
return null;
});
if (deleted) {
result.redis.count += deleted;
}
}
}
reply.ok(result);
});
//# sourceMappingURL=cache.delete.endpoint.js.map