UNPKG

airship-server

Version:

Airship is a framework for Node.JS & TypeScript that helps you to write big, scalable and maintainable API servers.

146 lines 4.81 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const BaseCache_1 = require("../domain/BaseCache"); const redis = require('redis'), client = redis.createClient(); client.select(3, () => { }); class RedisCache extends BaseCache_1.BaseCache { cache(key, value, ttl) { return __awaiter(this, void 0, void 0, function* () { if (ttl) { return new Promise((resolve, reject) => { client.psetex(key, ttl, value, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); } return new Promise((resolve, reject) => { client.set(key, value, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } get(key) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.get(key, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } getTTL(key) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.pttl(key, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } del(key) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.del(key, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } setnx(key, value) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.setnx(key, value, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } getset(key, value) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.getset(key, value, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } expire(key, ttl) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.expire(key, ttl, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } keys(key) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.keys(key, (e, v) => { if (e) { reject(e); return; } resolve(v); }); }); }); } exists(key) { return __awaiter(this, void 0, void 0, function* () { return new Promise((resolve, reject) => { client.exists(key, (e, v) => { if (e) { reject(e); return; } resolve(!!v); }); }); }); } } exports.default = RedisCache; //# sourceMappingURL=RedisCache.js.map