Exemplo n.º 1
0
        public IPackageRemoveResult RemoveProjectPackage(PackageRequest packageToRemove,
                                                         IPackageDescriptor projectDescriptor,
                                                         IPackageRepository projectRepository,
                                                         PackageRemoveOptions options = PackageRemoveOptions.Default)
        {
            if (packageToRemove == null)
            {
                throw new ArgumentNullException("packageToRemove");
            }
            if (projectDescriptor == null)
            {
                throw new ArgumentNullException("projectDescriptor");
            }
            if (projectRepository == null)
            {
                throw new ArgumentNullException("projectRepository");
            }

            var resultIterator = RemoveProjectPackageCore(packageToRemove, projectDescriptor, projectRepository, options);

            if ((options & PackageRemoveOptions.Hooks) == PackageRemoveOptions.Hooks && _hooks != null)
            {
                resultIterator = WrapWithHooks(resultIterator, projectDescriptor, projectRepository, "project");
            }
            return(new PackageRemoveResultIterator(resultIterator));
        }
Exemplo n.º 2
0
 IEnumerable <PackageOperationResult> RemoveProjectPackageCore(PackageRequest packageToRemove,
                                                               IPackageDescriptor packageDescriptor,
                                                               IPackageRepository projectRepository,
                                                               PackageRemoveOptions options)
 {
     return((packageToRemove.ExactVersion == null && !packageToRemove.LastVersion)
                    ? RemoveFromDescriptor(packageToRemove, packageDescriptor, projectRepository, options)
                    : RemovePackageFilesFromProjectRepo(packageToRemove, projectRepository));
 }
Exemplo n.º 3
0
        IEnumerable <PackageOperationResult> RemoveFromDescriptor(PackageRequest packageToRemove,
                                                                  IPackageDescriptor packageDescriptor,
                                                                  IPackageRepository projectRepository,
                                                                  PackageRemoveOptions options)
        {
            var dependency = packageDescriptor.Dependencies.FirstOrDefault(x => x.Name.EqualsNoCase(packageToRemove.Name));

            if (dependency == null)
            {
                yield return(new PackageDescriptorUpdateResult(PackageDescriptorDependencyUpdate.DependencyNotFound));

                yield break;
            }
            packageDescriptor.Dependencies.Remove(dependency);
        }
Exemplo n.º 4
0
        public IPackageRemoveResult RemoveProjectPackage(PackageRequest packageToRemove,
                                                         IPackageDescriptor packageDescriptor,
                                                         IPackageRepository projectRepository,
                                                         PackageRemoveOptions options = PackageRemoveOptions.Default)
        {
            if (packageToRemove == null)
            {
                throw new ArgumentNullException("packageToRemove");
            }
            if (packageDescriptor == null)
            {
                throw new ArgumentNullException("packageDescriptor");
            }
            if (projectRepository == null)
            {
                throw new ArgumentNullException("projectRepository");
            }

            return(new PackageRemoveResultIterator(RemoveProjectPackageCore(packageToRemove, packageDescriptor, projectRepository, options)));
        }
Exemplo n.º 5
0
 IEnumerable<PackageOperationResult> RemoveFromDescriptor(PackageRequest packageToRemove, PackageDescriptor packageDescriptor, IPackageRepository projectRepository, PackageRemoveOptions options)
 {
     var dependency = packageDescriptor.Dependencies.FirstOrDefault(x => x.Name.EqualsNoCase(packageToRemove.Name));
     if (dependency == null)
     {
         yield return new PackageDescriptorUpdateResult(PackageDescriptorDependencyUpdate.DependencyNotFound);
         yield break;
     }
     packageDescriptor.Dependencies.Remove(dependency);
     if ((options & PackageRemoveOptions.Clean) == PackageRemoveOptions.Clean)
         foreach (var cleaned in CleanProjectPackages(packageDescriptor, projectRepository, packageToRemove.Name))
             yield return cleaned;
 }
Exemplo n.º 6
0
 public IEnumerable<PackageOperationResult> RemoveSystemPackage(PackageRequest packageToRemove, IPackageRepository systemRepository, PackageRemoveOptions options = PackageRemoveOptions.Default)
 {
     if (packageToRemove == null) throw new ArgumentNullException("packageToRemove");
     if (systemRepository == null) throw new ArgumentNullException("systemRepository");
     return RemovePackageFromRepository(packageToRemove, systemRepository);
 }
Exemplo n.º 7
0
        public IEnumerable<PackageOperationResult> RemoveProjectPackage(PackageRequest packageToRemove,
            PackageDescriptor packageDescriptor,
            IPackageRepository projectRepository,
            PackageRemoveOptions options = PackageRemoveOptions.Default)
        {
            if (packageToRemove == null) throw new ArgumentNullException("packageToRemove");
            if (packageDescriptor == null) throw new ArgumentNullException("packageDescriptor");
            if (projectRepository == null) throw new ArgumentNullException("projectRepository");

            return (packageToRemove.ExactVersion == null && !packageToRemove.LastVersion)
                           ? RemoveFromDescriptor(packageToRemove, packageDescriptor, projectRepository, options)
                           : RemovePackageFilesFromProjectRepo(packageToRemove, projectRepository);
        }
Exemplo n.º 8
0
        public IPackageRemoveResult RemoveSystemPackage(PackageRequest packageToRemove, IPackageRepository systemRepository, PackageRemoveOptions options = PackageRemoveOptions.Default)
        {
            if (packageToRemove == null)
            {
                throw new ArgumentNullException("packageToRemove");
            }
            if (systemRepository == null)
            {
                throw new ArgumentNullException("systemRepository");
            }
            var resultIterator = RemoveSystemPackageCore(packageToRemove, systemRepository);

            return(new PackageRemoveResultIterator(resultIterator));
        }