You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Bindul Bhowmik <bi...@gmail.com> on 2017/05/02 22:38:05 UTC
Re: commons-compress git commit: [COMPRESS-392] Add Brotli decoder
based on the Google Brotli library.
On Tue, May 2, 2017 at 1:22 PM, <gg...@apache.org> wrote:
> Repository: commons-compress
> Updated Branches:
> refs/heads/master 932d4f899 -> a793612b9
>
>
> [COMPRESS-392] Add Brotli decoder based on the Google Brotli library.
>
> Project: http://git-wip-us.apache.org/repos/asf/commons-compress/repo
> Commit: http://git-wip-us.apache.org/repos/asf/commons-compress/commit/a793612b
> Tree: http://git-wip-us.apache.org/repos/asf/commons-compress/tree/a793612b
> Diff: http://git-wip-us.apache.org/repos/asf/commons-compress/diff/a793612b
>
> Branch: refs/heads/master
> Commit: a793612b9e09795feb253aab9a738bd1f7280700
> Parents: 932d4f8
> Author: Philippe Mouawad <p....@ubik-ingenierie.com>
> Authored: Tue May 2 12:22:04 2017 -0700
> Committer: Gary Gregory <ga...@gmail.com>
> Committed: Tue May 2 12:22:04 2017 -0700
>
> ----------------------------------------------------------------------
> pom.xml | 7 ++++++
> src/changes/changes.xml | 3 +++
> .../compressors/CompressorStreamFactory.java | 25 +++++++++++++++++++-
> 3 files changed, 34 insertions(+), 1 deletion(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/commons-compress/blob/a793612b/pom.xml
> ----------------------------------------------------------------------
> diff --git a/pom.xml b/pom.xml
> index 9745d1b..4cc629a 100644
> --- a/pom.xml
> +++ b/pom.xml
> @@ -68,6 +68,12 @@ jar, tar, zip, dump, 7z, arj.
> <scope>test</scope>
> </dependency>
> <dependency>
> + <groupId>org.brotli</groupId>
> + <artifactId>dec</artifactId>
> + <version>0.1.1</version>
> + <optional>true</optional>
> + </dependency>
> + <dependency>
> <groupId>org.tukaani</groupId>
> <artifactId>xz</artifactId>
> <version>1.6</version>
> @@ -245,6 +251,7 @@ jar, tar, zip, dump, 7z, arj.
> <configuration>
> <instructions>
> <Import-Package>org.tukaani.xz;resolution:=optional</Import-Package>
> + <Import-Package>org.brotli.dec;resolution:=optional</Import-Package>
> </instructions>
> </configuration>
> </plugin>
>
> http://git-wip-us.apache.org/repos/asf/commons-compress/blob/a793612b/src/changes/changes.xml
> ----------------------------------------------------------------------
> diff --git a/src/changes/changes.xml b/src/changes/changes.xml
> index d40a1a8..acd06f0 100644
> --- a/src/changes/changes.xml
> +++ b/src/changes/changes.xml
> @@ -103,6 +103,9 @@ The <action> type attribute can be add,update,fix,remove.
> Internal location pointer in ZipFile could get incremented
> even if nothing had been read.
> </action>
> + <action issue="COMPRESS-392" type="add" date="2017-05-02" due-to="Philippe Mouawad">
> + Add Brotli decoder based on the Google Brotli library.
> + </action>
> </release>
> <release version="1.13" date="2016-12-29"
> description="Release 1.13 - API compatible to 1.12 but requires Java 7 at runtime.">
>
> http://git-wip-us.apache.org/repos/asf/commons-compress/blob/a793612b/src/main/java/org/apache/commons/compress/compressors/CompressorStreamFactory.java
> ----------------------------------------------------------------------
> diff --git a/src/main/java/org/apache/commons/compress/compressors/CompressorStreamFactory.java b/src/main/java/org/apache/commons/compress/compressors/CompressorStreamFactory.java
> index b12fc1a..29cf0cf 100644
> --- a/src/main/java/org/apache/commons/compress/compressors/CompressorStreamFactory.java
> +++ b/src/main/java/org/apache/commons/compress/compressors/CompressorStreamFactory.java
> @@ -31,6 +31,8 @@ import java.util.Set;
> import java.util.SortedMap;
> import java.util.TreeMap;
>
> +import org.apache.commons.compress.compressors.brotli.BrotliCompressorInputStream;
> +import org.apache.commons.compress.compressors.brotli.BrotliUtils;
> import org.apache.commons.compress.compressors.bzip2.BZip2CompressorInputStream;
> import org.apache.commons.compress.compressors.bzip2.BZip2CompressorOutputStream;
> import org.apache.commons.compress.compressors.deflate.DeflateCompressorInputStream;
> @@ -93,6 +95,16 @@ public class CompressorStreamFactory implements CompressorStreamProvider {
>
> private static final CompressorStreamFactory SINGLETON = new CompressorStreamFactory();
>
> +
> +
> + /**
> + * Constant (value {@value}) used to identify the BROTLI compression
> + * algorithm.
> + *
> + * @since 1.1
> + */
> + public static final String BROTLI = "br";
Gary,
Shouldn't the @since value be 1.14 here?
Bindul
> +
> /**
> * Constant (value {@value}) used to identify the BZIP2 compression
> * algorithm.
> @@ -263,6 +275,10 @@ public class CompressorStreamFactory implements CompressorStreamProvider {
> private static ArrayList<CompressorStreamProvider> findCompressorStreamProviders() {
> return Lists.newArrayList(serviceLoaderIterator());
> }
> +
> + public static String getBrotli() {
> + return BROTLI;
> + }
>
> public static String getBzip2() {
> return BZIP2;
> @@ -524,6 +540,13 @@ public class CompressorStreamFactory implements CompressorStreamProvider {
> if (BZIP2.equalsIgnoreCase(name)) {
> return new BZip2CompressorInputStream(in, actualDecompressConcatenated);
> }
> +
> + if (BROTLI.equalsIgnoreCase(name)) {
> + if (!BrotliUtils.isBrotliCompressionAvailable()) {
> + throw new CompressorException("Brotli compression is not available.");
> + }
> + return new BrotliCompressorInputStream(in);
> + }
>
> if (XZ.equalsIgnoreCase(name)) {
> if (!XZUtils.isXZCompressionAvailable()) {
> @@ -677,7 +700,7 @@ public class CompressorStreamFactory implements CompressorStreamProvider {
>
> @Override
> public Set<String> getInputStreamCompressorNames() {
> - return Sets.newHashSet(GZIP, BZIP2, XZ, LZMA, PACK200, DEFLATE, SNAPPY_RAW, SNAPPY_FRAMED, Z, LZ4_BLOCK,
> + return Sets.newHashSet(GZIP, BROTLI, BZIP2, XZ, LZMA, PACK200, DEFLATE, SNAPPY_RAW, SNAPPY_FRAMED, Z, LZ4_BLOCK,
> LZ4_FRAMED);
> }
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org
Re: commons-compress git commit: [COMPRESS-392] Add Brotli decoder
based on the Google Brotli library.
Posted by Gary Gregory <ga...@gmail.com>.
On Tue, May 2, 2017 at 3:38 PM, Bindul Bhowmik <bi...@gmail.com>
wrote:
> On Tue, May 2, 2017 at 1:22 PM, <gg...@apache.org> wrote:
> > Repository: commons-compress
> > Updated Branches:
> > refs/heads/master 932d4f899 -> a793612b9
> >
> >
> > [COMPRESS-392] Add Brotli decoder based on the Google Brotli library.
> >
> > Project: http://git-wip-us.apache.org/repos/asf/commons-compress/repo
> > Commit: http://git-wip-us.apache.org/repos/asf/commons-compress/
> commit/a793612b
> > Tree: http://git-wip-us.apache.org/repos/asf/commons-compress/
> tree/a793612b
> > Diff: http://git-wip-us.apache.org/repos/asf/commons-compress/
> diff/a793612b
> >
> > Branch: refs/heads/master
> > Commit: a793612b9e09795feb253aab9a738bd1f7280700
> > Parents: 932d4f8
> > Author: Philippe Mouawad <p....@ubik-ingenierie.com>
> > Authored: Tue May 2 12:22:04 2017 -0700
> > Committer: Gary Gregory <ga...@gmail.com>
> > Committed: Tue May 2 12:22:04 2017 -0700
> >
> > ----------------------------------------------------------------------
> > pom.xml | 7 ++++++
> > src/changes/changes.xml | 3 +++
> > .../compressors/CompressorStreamFactory.java | 25
> +++++++++++++++++++-
> > 3 files changed, 34 insertions(+), 1 deletion(-)
> > ----------------------------------------------------------------------
> >
> >
> > http://git-wip-us.apache.org/repos/asf/commons-compress/
> blob/a793612b/pom.xml
> > ----------------------------------------------------------------------
> > diff --git a/pom.xml b/pom.xml
> > index 9745d1b..4cc629a 100644
> > --- a/pom.xml
> > +++ b/pom.xml
> > @@ -68,6 +68,12 @@ jar, tar, zip, dump, 7z, arj.
> > <scope>test</scope>
> > </dependency>
> > <dependency>
> > + <groupId>org.brotli</groupId>
> > + <artifactId>dec</artifactId>
> > + <version>0.1.1</version>
> > + <optional>true</optional>
> > + </dependency>
> > + <dependency>
> > <groupId>org.tukaani</groupId>
> > <artifactId>xz</artifactId>
> > <version>1.6</version>
> > @@ -245,6 +251,7 @@ jar, tar, zip, dump, 7z, arj.
> > <configuration>
> > <instructions>
> > <Import-Package>org.tukaani.xz;resolution:=optional</
> Import-Package>
> > + <Import-Package>org.brotli.dec;resolution:=optional</
> Import-Package>
> > </instructions>
> > </configuration>
> > </plugin>
> >
> > http://git-wip-us.apache.org/repos/asf/commons-compress/
> blob/a793612b/src/changes/changes.xml
> > ----------------------------------------------------------------------
> > diff --git a/src/changes/changes.xml b/src/changes/changes.xml
> > index d40a1a8..acd06f0 100644
> > --- a/src/changes/changes.xml
> > +++ b/src/changes/changes.xml
> > @@ -103,6 +103,9 @@ The <action> type attribute can be
> add,update,fix,remove.
> > Internal location pointer in ZipFile could get incremented
> > even if nothing had been read.
> > </action>
> > + <action issue="COMPRESS-392" type="add" date="2017-05-02"
> due-to="Philippe Mouawad">
> > + Add Brotli decoder based on the Google Brotli library.
> > + </action>
> > </release>
> > <release version="1.13" date="2016-12-29"
> > description="Release 1.13 - API compatible to 1.12 but
> requires Java 7 at runtime.">
> >
> > http://git-wip-us.apache.org/repos/asf/commons-compress/
> blob/a793612b/src/main/java/org/apache/commons/compress/compressors/
> CompressorStreamFactory.java
> > ----------------------------------------------------------------------
> > diff --git a/src/main/java/org/apache/commons/compress/compressors/CompressorStreamFactory.java
> b/src/main/java/org/apache/commons/compress/compressors/
> CompressorStreamFactory.java
> > index b12fc1a..29cf0cf 100644
> > --- a/src/main/java/org/apache/commons/compress/compressors/
> CompressorStreamFactory.java
> > +++ b/src/main/java/org/apache/commons/compress/compressors/
> CompressorStreamFactory.java
> > @@ -31,6 +31,8 @@ import java.util.Set;
> > import java.util.SortedMap;
> > import java.util.TreeMap;
> >
> > +import org.apache.commons.compress.compressors.brotli.
> BrotliCompressorInputStream;
> > +import org.apache.commons.compress.compressors.brotli.BrotliUtils;
> > import org.apache.commons.compress.compressors.bzip2.
> BZip2CompressorInputStream;
> > import org.apache.commons.compress.compressors.bzip2.
> BZip2CompressorOutputStream;
> > import org.apache.commons.compress.compressors.deflate.
> DeflateCompressorInputStream;
> > @@ -93,6 +95,16 @@ public class CompressorStreamFactory implements
> CompressorStreamProvider {
> >
> > private static final CompressorStreamFactory SINGLETON = new
> CompressorStreamFactory();
> >
> > +
> > +
> > + /**
> > + * Constant (value {@value}) used to identify the BROTLI compression
> > + * algorithm.
> > + *
> > + * @since 1.1
> > + */
> > + public static final String BROTLI = "br";
>
> Gary,
>
> Shouldn't the @since value be 1.14 here?
>
Yes, good catch. Fixed in git master.
Thank you for the review.
Gary
>
> Bindul
>
> > +
> > /**
> > * Constant (value {@value}) used to identify the BZIP2 compression
> > * algorithm.
> > @@ -263,6 +275,10 @@ public class CompressorStreamFactory implements
> CompressorStreamProvider {
> > private static ArrayList<CompressorStreamProvider>
> findCompressorStreamProviders() {
> > return Lists.newArrayList(serviceLoaderIterator());
> > }
> > +
> > + public static String getBrotli() {
> > + return BROTLI;
> > + }
> >
> > public static String getBzip2() {
> > return BZIP2;
> > @@ -524,6 +540,13 @@ public class CompressorStreamFactory implements
> CompressorStreamProvider {
> > if (BZIP2.equalsIgnoreCase(name)) {
> > return new BZip2CompressorInputStream(in,
> actualDecompressConcatenated);
> > }
> > +
> > + if (BROTLI.equalsIgnoreCase(name)) {
> > + if (!BrotliUtils.isBrotliCompressionAvailable()) {
> > + throw new CompressorException("Brotli compression
> is not available.");
> > + }
> > + return new BrotliCompressorInputStream(in);
> > + }
> >
> > if (XZ.equalsIgnoreCase(name)) {
> > if (!XZUtils.isXZCompressionAvailable()) {
> > @@ -677,7 +700,7 @@ public class CompressorStreamFactory implements
> CompressorStreamProvider {
> >
> > @Override
> > public Set<String> getInputStreamCompressorNames() {
> > - return Sets.newHashSet(GZIP, BZIP2, XZ, LZMA, PACK200, DEFLATE,
> SNAPPY_RAW, SNAPPY_FRAMED, Z, LZ4_BLOCK,
> > + return Sets.newHashSet(GZIP, BROTLI, BZIP2, XZ, LZMA, PACK200,
> DEFLATE, SNAPPY_RAW, SNAPPY_FRAMED, Z, LZ4_BLOCK,
> > LZ4_FRAMED);
> > }
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>
--
E-Mail: garydgregory@gmail.com | ggregory@apache.org
Java Persistence with Hibernate, Second Edition
<https://www.amazon.com/gp/product/1617290459/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1617290459&linkCode=as2&tag=garygregory-20&linkId=cadb800f39946ec62ea2b1af9fe6a2b8>
<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1617290459>
JUnit in Action, Second Edition
<https://www.amazon.com/gp/product/1935182021/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182021&linkCode=as2&tag=garygregory-20&linkId=31ecd1f6b6d1eaf8886ac902a24de418%22>
<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182021>
Spring Batch in Action
<https://www.amazon.com/gp/product/1935182951/ref=as_li_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1935182951&linkCode=%7B%7BlinkCode%7D%7D&tag=garygregory-20&linkId=%7B%7Blink_id%7D%7D%22%3ESpring+Batch+in+Action>
<http:////ir-na.amazon-adsystem.com/e/ir?t=garygregory-20&l=am2&o=1&a=1935182951>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory