Exemple #1
0
 public PackageArchiver(IPackageUtilities packageUtilities, ICompressionUtilities compressionUtilities,
                        IWorkingDirectoriesProvider workingDirectoriesProvider, IFileSystem fileSystem, ILogger logger)
 {
     packageUtilities.CheckArgumentNull(nameof(packageUtilities));
     compressionUtilities.CheckArgumentNull(nameof(compressionUtilities));
     workingDirectoriesProvider.CheckArgumentNull(nameof(workingDirectoriesProvider));
     fileSystem.CheckArgumentNull(nameof(fileSystem));
     logger.CheckArgumentNull(nameof(logger));
     _packageUtilities           = packageUtilities;
     _compressionUtilities       = compressionUtilities;
     _workingDirectoriesProvider = workingDirectoriesProvider;
     _fileSystem = fileSystem;
     _logger     = logger;
 }
Exemple #2
0
        public static int ExtractPackage(UnzipPkgOptions options, IPackageArchiver packageArchiver,
                                         IPackageUtilities packageUtilities, IFileSystem fileSystem)
        {
            var    packagePath            = GetCorrectedPackagePath(options);
            var    destinationDirectory   = fileSystem.GetCurrentDirectoryIfEmpty(options.DestinationPath);
            string packageName            = fileSystem.ExtractNameFromPath(packagePath);
            var    destinationPackagePath = Path.Combine(destinationDirectory, packageName);

            try {
                Console.WriteLine($"Start unzip package ({packageName}).");
                var overwrite = ShowDialogOverwriteDestinationPackageDir(destinationPackagePath);
                packageArchiver.Unpack(packagePath, overwrite, destinationDirectory);
                Console.WriteLine($"Unzip package ({packageName}) completed.");
                return(0);
            } catch (Exception e) {
                Console.WriteLine($"{e.Message}");
                return(1);
            }
        }