commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefan Bodewig (JIRA)" <>
Subject [jira] [Commented] (COMPRESS-118) Simple high-level api to do with one line what you can do with one command in a command shell
Date Mon, 23 Apr 2018 06:33:00 GMT


Stefan Bodewig commented on COMPRESS-118:

Probably my suggested {{Archiver}} should also provide overloads that use an {{ArchiveOutputStream}}
or {{SevenZOutFile}} as targets - same for {{Expander}}'s archive. That way people can configure
the streams/files with encodings and whatnot before processing.
Maybe I just need to start writing code :-)

> Simple high-level api to do with one line what you can do with one command in a command
> ---------------------------------------------------------------------------------------------
>                 Key: COMPRESS-118
>                 URL:
>             Project: Commons Compress
>          Issue Type: New Feature
>          Components: Archivers
>            Reporter: Eirik Maus
>            Priority: Major
>              Labels: API
>             Fix For: 1.17
>   Original Estimate: 48h
>  Remaining Estimate: 48h
> There should be a high-level api for basic operations with archives in Java. This could
be a place for it. There are a few apis for working with compression archives in java, but
all of them are fairly low-level. The most basic operations therefore requires just as much
code as more specific ones.  It is not possible to unzip an archive in less than 50 lines
of code, can you believe it!  
> Performing basic operations on archives should be as easy in java as on the command line.
I suggest adding something like:
>   HighLevelApi.extractAll(zipfile,destinationDirectory)
> or, even
>   new ZipFile(file).extractAllTo(directory)
> and
>   ZipFile archive = HighLevelApi.createFrom(directory, "*");
> or, even
>   ZipFile archive = ZipFile.from(directory);
> In general: one line in bash should be one line in java (plus try-catch...) for these
kinds of operations. 
> See "zip --help" and "unzip --help" for further candidate methods in the high-level API.

> One could also consider a coordinated effort with the VFS-project, in order to add such
methods to all such hierarchies/storages. 

This message was sent by Atlassian JIRA

View raw message