UNPKG

angular-odata

Version:

Client side OData typescript library for Angular

30 lines 3.32 kB
import { ODataCache } from './cache'; export class ODataInMemoryCache extends ODataCache { constructor({ timeout } = {}) { super({ timeout }); } /** * Store the response in the cache * @param req The request with the resource to store the response * @param res The response to store in the cache */ putResponse(req, res) { let scope = this.scope(req); let tags = this.tags(res); this.put(req.cacheKey, res, { timeout: res.options.maxAge, scope, tags, }); } /** * Restore the response from the cache * @param req The request with the resource to get the response * @returns The response from the cache */ getResponse(req) { let scope = this.scope(req); return this.get(req.cacheKey, { scope }); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL2NhY2hlL21lbW9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXJDLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxVQUFVO0lBQ2hELFlBQVksRUFBRSxPQUFPLEtBQTJCLEVBQUU7UUFDaEQsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxHQUFzQixFQUFFLEdBQXVCO1FBQ3pELElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO1lBQzFCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU07WUFDM0IsS0FBSztZQUNMLElBQUk7U0FDTCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxHQUFzQjtRQUNoQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPRGF0YVJlcXVlc3QsIE9EYXRhUmVzcG9uc2UgfSBmcm9tICcuLi9yZXNvdXJjZXMnO1xuaW1wb3J0IHsgT0RhdGFDYWNoZSB9IGZyb20gJy4vY2FjaGUnO1xuXG5leHBvcnQgY2xhc3MgT0RhdGFJbk1lbW9yeUNhY2hlIGV4dGVuZHMgT0RhdGFDYWNoZSB7XG4gIGNvbnN0cnVjdG9yKHsgdGltZW91dCB9OiB7IHRpbWVvdXQ/OiBudW1iZXIgfSA9IHt9KSB7XG4gICAgc3VwZXIoeyB0aW1lb3V0IH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0b3JlIHRoZSByZXNwb25zZSBpbiB0aGUgY2FjaGVcbiAgICogQHBhcmFtIHJlcSBUaGUgcmVxdWVzdCB3aXRoIHRoZSByZXNvdXJjZSB0byBzdG9yZSB0aGUgcmVzcG9uc2VcbiAgICogQHBhcmFtIHJlcyBUaGUgcmVzcG9uc2UgdG8gc3RvcmUgaW4gdGhlIGNhY2hlXG4gICAqL1xuICBwdXRSZXNwb25zZShyZXE6IE9EYXRhUmVxdWVzdDxhbnk+LCByZXM6IE9EYXRhUmVzcG9uc2U8YW55Pikge1xuICAgIGxldCBzY29wZSA9IHRoaXMuc2NvcGUocmVxKTtcbiAgICBsZXQgdGFncyA9IHRoaXMudGFncyhyZXMpO1xuICAgIHRoaXMucHV0KHJlcS5jYWNoZUtleSwgcmVzLCB7XG4gICAgICB0aW1lb3V0OiByZXMub3B0aW9ucy5tYXhBZ2UsXG4gICAgICBzY29wZSxcbiAgICAgIHRhZ3MsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZSB0aGUgcmVzcG9uc2UgZnJvbSB0aGUgY2FjaGVcbiAgICogQHBhcmFtIHJlcSBUaGUgcmVxdWVzdCB3aXRoIHRoZSByZXNvdXJjZSB0byBnZXQgdGhlIHJlc3BvbnNlXG4gICAqIEByZXR1cm5zIFRoZSByZXNwb25zZSBmcm9tIHRoZSBjYWNoZVxuICAgKi9cbiAgZ2V0UmVzcG9uc2UocmVxOiBPRGF0YVJlcXVlc3Q8YW55Pik6IE9EYXRhUmVzcG9uc2U8YW55PiB8IHVuZGVmaW5lZCB7XG4gICAgbGV0IHNjb3BlID0gdGhpcy5zY29wZShyZXEpO1xuICAgIHJldHVybiB0aGlzLmdldChyZXEuY2FjaGVLZXksIHsgc2NvcGUgfSk7XG4gIH1cbn1cbiJdfQ==