コード例 #1
0
        public FolderRepository(IDirectory packageBasePath, FolderRepositoryOptions options = FolderRepositoryOptions.Default)
        {
            if (packageBasePath == null)
            {
                throw new ArgumentNullException("packageBasePath");
            }
            _useSymLinks      = (options & FolderRepositoryOptions.UseSymLinks) == FolderRepositoryOptions.UseSymLinks;
            _anchoringEnabled = (options & FolderRepositoryOptions.AnchoringEnabled) == FolderRepositoryOptions.AnchoringEnabled;
            _canLock          = (options & FolderRepositoryOptions.SupportLocks) == FolderRepositoryOptions.SupportLocks;

            LockedPackages = Enumerable.Empty <IPackageInfo>().ToLookup(_ => string.Empty);

            _persistSource = (options & FolderRepositoryOptions.PersistPackageSources) == FolderRepositoryOptions.PersistPackageSources;

            BasePath = packageBasePath;


            _rootCacheDirectory = BasePath.GetOrCreateDirectory("_cache");

            _packageLoader = !_persistSource
                                 ? new PackageStorage(this, BasePath, _rootCacheDirectory)
                                 : new PackageStorageWithSource(this, BasePath, _rootCacheDirectory);
            if (_persistSource)
            {
                packageBasePath.GetFile("packages").MustExist();
            }
            RefreshPackages();
        }
コード例 #2
0
        public FolderRepository(IDirectory packageBasePath, FolderRepositoryOptions options = FolderRepositoryOptions.Default)
        {
            _useSymLinks = (options & FolderRepositoryOptions.UseSymLinks) == FolderRepositoryOptions.UseSymLinks;
            _anchoringEnabled = (options & FolderRepositoryOptions.AnchoringEnabled) == FolderRepositoryOptions.AnchoringEnabled;
            if (packageBasePath == null) throw new ArgumentNullException("packageBasePath");

            BasePath = packageBasePath;

            _rootCacheDirectory = BasePath.GetOrCreateDirectory("_cache");
            RefreshPackages();
        }
コード例 #3
0
        public FolderRepository(IDirectory packageBasePath, FolderRepositoryOptions options = FolderRepositoryOptions.Default)
        {
            _useSymLinks      = (options & FolderRepositoryOptions.UseSymLinks) == FolderRepositoryOptions.UseSymLinks;
            _anchoringEnabled = (options & FolderRepositoryOptions.AnchoringEnabled) == FolderRepositoryOptions.AnchoringEnabled;
            if (packageBasePath == null)
            {
                throw new ArgumentNullException("packageBasePath");
            }

            BasePath = packageBasePath;


            _rootCacheDirectory = BasePath.GetOrCreateDirectory("_cache");
            RefreshPackages();
        }
コード例 #4
0
ファイル: folder_repository.cs プロジェクト: llenroc/openwrap
 protected void given_folder_repository(FolderRepositoryOptions options)
 {
     repository = new FolderRepository(repository_directory, options);
 }
コード例 #5
0
 protected void given_folder_repository(FolderRepositoryOptions options)
 {
     repository = new FolderRepository(repository_directory, options);
 }