UNPKG

oa-jira

Version:

Octet Agile's JIRA connectivity project.

54 lines (46 loc) 1.91 kB
const commons = require('../../commons'); const Board = require('../../model/classes/board.class'); const Category = require('../../model/classes/category.class'); const Project = require('../../model/classes/project.class'); const Resolution = require('../../model/classes/resolution.class'); const Sprint = require('../../model/classes/sprint.class'); const Status = require('../../model/classes/status.class'); const Type = require('../../model/classes/type.class'); const Version = require('../../model/classes/version.class'); const constants = require('../constants/cache.constants'); const ResourceCache = require('./resource.cache.class'); class Cache { boards; categories; projects; resolutions; sprints; statuses; types; versions; constructor() { this.boards = new ResourceCache('boards', Board, constants.max.boards); this.categories = new ResourceCache('categories', Category, constants.max.categories); this.projects = new ResourceCache('projects', Project, constants.max.projects); this.resolutions = new ResourceCache('resolutions', Resolution, constants.max.resolutions); this.sprints = new ResourceCache('sprints', Sprint, constants.max.sprints); this.statuses = new ResourceCache('statuses', Status, constants.max.statuses); this.types = new ResourceCache('types', Type, constants.max.types); this.versions = new ResourceCache('versions', Version, constants.max.versions); } static resolve(cache) { return commons.object.resolve(cache, { name: 'cache', className: 'Cache', _class: Cache }); } reset() { this.boards.reset(); this.categories.reset(); this.projects.reset(); this.resolutions.reset(); this.sprints.reset(); this.statuses.reset(); this.types.reset(); this.versions.reset(); return this; } } module.exports = Cache;