public void RefreshPackages() { Packages = (from wrapFile in BasePath.Files("*.wrap") let packageFullName = wrapFile.NameWithoutExtension let packageVersion = PackageNameUtility.GetVersion(packageFullName) where packageVersion != null let packageCacheDirectory = _rootCacheDirectory.GetDirectory(packageFullName) select new PackageLocation( packageCacheDirectory, CreatePackageInstance(packageCacheDirectory, wrapFile) )).ToList(); }
void RefreshLockFiles() { if (!_canLock) { return; } _lockFile = BasePath.Files("*.lock").Where(x => x.Name.StartsWith("packages.")).OrderBy(x => x.Name.Length).FirstOrDefault() ?? BasePath.GetFile("packages.lock"); _lockFileUri = new Uri(ConstantUris.URI_BASE, UriKind.Absolute).Combine(new Uri(_lockFile.Name, UriKind.Relative)); if (_lockFile.Exists == false) { return; } var lockedPackageInfo = new DefaultConfigurationManager(BasePath).Load <LockedPackages>(_lockFileUri) .Lock; var lockedPackages = lockedPackageInfo.Select( locked => _packageLoader.Packages.Single(package => locked.Name.EqualsNoCase(package.Package.Name) && locked.Version == package.Package.Version).Package); LockedPackages = lockedPackages.ToLookup(x => string.Empty); }