UNPKG

deep-package-manager

Version:
49 lines (34 loc) 1.19 kB
/** * Created by CCristi on 6/29/16. */ 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.AbstractStrategy = undefined; var _deepCore = require('deep-core'); var _deepCore2 = _interopRequireDefault(_deepCore); var _fs = require('fs'); var _fs2 = _interopRequireDefault(_fs); var _path = require('path'); var _path2 = _interopRequireDefault(_path); var _Instance = require('../../Microservice/Instance'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class AbstractStrategy extends _deepCore2.default.OOP.Interface { constructor() { super(['path', 'config', 'shouldPreserve']); } /** * @param {String} path * @returns {AbstractStrategy} */ static create(path) { if (_fs2.default.existsSync(_path2.default.join(path, _Instance.Instance.CONFIG_FILE))) { let PessimisticStrategy = require('./PessimisticStrategy').PessimisticStrategy; return PessimisticStrategy.create(path); } let OptimisticStrategy = require('./OptimisticStrategy').OptimisticStrategy; return new OptimisticStrategy(path); } } exports.AbstractStrategy = AbstractStrategy;