public ServerPackageRepository( string path, IHashProvider hashProvider, ISettingsProvider settingsProvider = null, Logging.ILogger logger = null) { if (string.IsNullOrEmpty(path)) { throw new ArgumentNullException(nameof(path)); } if (hashProvider == null) { throw new ArgumentNullException(nameof(hashProvider)); } _fileSystem = new PhysicalFileSystem(path); _runBackgroundTasks = true; _settingsProvider = settingsProvider ?? new DefaultSettingsProvider(); _logger = logger ?? new TraceLogger(); _serverPackageCache = InitializeServerPackageStore(); _serverPackageStore = new ServerPackageStore( _fileSystem, new ExpandedPackageRepository(_fileSystem, hashProvider), _logger); }
internal ServerPackageRepository( IFileSystem fileSystem, bool runBackgroundTasks, ExpandedPackageRepository innerRepository, ISettingsProvider settingsProvider = null, Logging.ILogger logger = null) { if (fileSystem == null) { throw new ArgumentNullException(nameof(fileSystem)); } if (innerRepository == null) { throw new ArgumentNullException(nameof(innerRepository)); } _fileSystem = fileSystem; _runBackgroundTasks = runBackgroundTasks; _settingsProvider = settingsProvider ?? new DefaultSettingsProvider(); _logger = logger ?? new TraceLogger(); _serverPackageCache = InitializeServerPackageStore(); _serverPackageStore = new ServerPackageStore( _fileSystem, innerRepository, _logger); }