0
Fork 0
mirror of https://github.com/verdaccio/verdaccio.git synced 2025-04-01 02:42:23 -05:00

refactor: fix class location

This commit is contained in:
Juan Picado @jotadeveloper 2017-12-22 22:06:49 +01:00 committed by juanpicado
parent d352c6c63f
commit dcbd1e9db8
2 changed files with 24 additions and 26 deletions

View file

@ -16,7 +16,7 @@ import {
generatePackageTemplate, normalizePackage, generateRevision, cleanUpReadme,
fileExist, noSuchFile, DEFAULT_REVISION, pkgFileName,
} from './storage-utils';
import {loadPlugin} from '../lib/plugin-loader';
import LocalDatabase from '@verdaccio/local-storage';
import {UploadTarball, ReadTarball} from '@verdaccio/streams';
import type {
@ -44,9 +44,30 @@ class LocalStorage implements IStorage {
logger: Logger;
constructor(config: Config, logger: Logger) {
this.localData = new LocalDatabase(config, logger);
this.logger = logger.child({sub: 'fs'});
this.config = config;
this.localData = this._loadStorage(config, logger);
}
_loadStorage(config: Config, logger: Logger) {
const Storage = this._loadStorePlugin();
if (_.isNil(Storage)) {
return new LocalDatabase(this.config, logger);
} else {
return new Storage(this.config, logger);
}
}
_loadStorePlugin() {
const plugin_params = {
config: this.config,
logger: this.logger,
};
return _.head(loadPlugin(this.config, this.config.store, plugin_params, function(plugin) {
return plugin.getPackageStorage;
}));
}
addPackage(name: string, pkg: Package, callback: Callback) {

View file

@ -12,8 +12,6 @@ import {ReadTarball} from '@verdaccio/streams';
import ProxyStorage from './up-storage';
import * as Utils from './utils';
import {loadPlugin} from '../lib/plugin-loader';
const Logger = require('../lib/logger');
const WHITELIST = ['_rev', 'name', 'versions', 'dist-tags', 'readme', 'time'];
const getDefaultMetadata = (name) => {
@ -38,28 +36,7 @@ class Storage {
this.config = config;
this._setupUpLinks(this.config);
this.logger = Logger.logger.child();
this.localStorage = this._loadStorage();
}
_loadStorage() {
const Storage = this._loadStorePlugin();
if (_.isNil(Storage)) {
return new LocalStorage(this.config, Logger.logger);
} else {
return new Storage(this.config, Logger.logger);
}
}
_loadStorePlugin() {
const plugin_params = {
config: this.config,
logger: this.logger,
};
return _.head(loadPlugin(this.config, this.config.store, plugin_params, function(plugin) {
return plugin.getPackageStorage;
}));
this.localStorage = new LocalStorage(this.config, Logger.logger);
}
/**