You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by eb...@apache.org on 2013/11/26 14:50:44 UTC

svn commit: r1545655 - in /commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging: common/ formats/png/ formats/png/chunks/

Author: ebourg
Date: Tue Nov 26 13:50:44 2013
New Revision: 1545655

URL: http://svn.apache.org/r1545655
Log:
Removed ZLibUtils

Removed:
    commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/common/ZLibUtils.java
Modified:
    commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java
    commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java
    commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java
    commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java Tue Nov 26 13:50:44 2013
@@ -29,11 +29,11 @@ import java.util.zip.DeflaterOutputStrea
 import org.apache.commons.imaging.ImageWriteException;
 import org.apache.commons.imaging.ImagingConstants;
 import org.apache.commons.imaging.PixelDensity;
-import org.apache.commons.imaging.common.ZLibUtils;
 import org.apache.commons.imaging.palette.Palette;
 import org.apache.commons.imaging.palette.PaletteFactory;
 import org.apache.commons.imaging.palette.SimplePalette;
 import org.apache.commons.imaging.util.Debug;
+import org.apache.commons.imaging.util.IoUtils;
 
 public class PngWriter {
     private final boolean verbose;
@@ -152,7 +152,7 @@ public class PngWriter {
         baos.write(text.translatedKeyword.getBytes("utf-8"));
         baos.write(0);
 
-        baos.write(new ZLibUtils().deflate(text.text.getBytes("utf-8")));
+        baos.write(deflate(text.text.getBytes("utf-8")));
 
         writeChunk(os, PngConstants.iTXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
     }
@@ -176,7 +176,7 @@ public class PngWriter {
         baos.write(PngConstants.COMPRESSION_DEFLATE_INFLATE);
 
         // text
-        baos.write(new ZLibUtils().deflate(text.text.getBytes("ISO-8859-1")));
+        baos.write(deflate(text.text.getBytes("ISO-8859-1")));
 
         writeChunk(os, PngConstants.zTXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
     }
@@ -202,6 +202,19 @@ public class PngWriter {
         writeChunk(os, PngConstants.tEXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
     }
 
+    public final byte[] deflate(final byte bytes[]) throws IOException {
+        final ByteArrayOutputStream baos = new ByteArrayOutputStream();
+        final DeflaterOutputStream dos = new DeflaterOutputStream(baos);
+        boolean canThrow = false;
+        try {
+            dos.write(bytes);
+            canThrow = true;
+        } finally {
+            IoUtils.closeQuietly(canThrow, dos);
+        }
+        return baos.toByteArray();
+    }
+    
     private boolean isValidISO_8859_1(final String s) {
         try {
             final String roundtrip = new String(s.getBytes("ISO-8859-1"), "ISO-8859-1");
@@ -230,7 +243,7 @@ public class PngWriter {
         baos.write(PngConstants.XMP_KEYWORD.getBytes("utf-8"));
         baos.write(0);
 
-        baos.write(new ZLibUtils().deflate(xmpXml.getBytes("utf-8")));
+        baos.write(deflate(xmpXml.getBytes("utf-8")));
 
         writeChunk(os, PngConstants.iTXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
     }

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java Tue Nov 26 13:50:44 2013
@@ -16,10 +16,12 @@
  */
 package org.apache.commons.imaging.formats.png.chunks;
 
+import java.io.ByteArrayInputStream;
 import java.io.IOException;
+import java.util.zip.InflaterInputStream;
 
 import org.apache.commons.imaging.ImageReadException;
-import org.apache.commons.imaging.common.ZLibUtils;
+import org.apache.commons.imaging.common.BinaryFunctions;
 
 public class PngChunkIccp extends PngChunk {
     // private final PngImageParser parser;
@@ -60,7 +62,8 @@ public class PngChunkIccp extends PngChu
             System.out.println("bytes.length: " + bytes.length);
         }
 
-        UncompressedProfile = new ZLibUtils().inflate(CompressedProfile);
+        UncompressedProfile = BinaryFunctions.getStreamBytes(
+                new InflaterInputStream(new ByteArrayInputStream(CompressedProfile)));
 
         if (getDebug()) {
             System.out.println("UncompressedProfile: " + Integer.toString(bytes.length));

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java Tue Nov 26 13:50:44 2013
@@ -16,10 +16,12 @@
  */
 package org.apache.commons.imaging.formats.png.chunks;
 
+import java.io.ByteArrayInputStream;
 import java.io.IOException;
+import java.util.zip.InflaterInputStream;
 
 import org.apache.commons.imaging.ImageReadException;
-import org.apache.commons.imaging.common.ZLibUtils;
+import org.apache.commons.imaging.common.BinaryFunctions;
 import org.apache.commons.imaging.formats.png.PngConstants;
 import org.apache.commons.imaging.formats.png.PngText;
 
@@ -92,7 +94,7 @@ public class PngChunkItxt extends PngTex
             System.arraycopy(bytes, index, compressedText, 0,
                     compressedTextLength);
 
-            text = new String(new ZLibUtils().inflate(compressedText),
+            text = new String(BinaryFunctions.getStreamBytes(new InflaterInputStream(new ByteArrayInputStream(bytes))),
                     "utf-8");
 
         } else {

Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java Tue Nov 26 13:50:44 2013
@@ -16,10 +16,12 @@
  */
 package org.apache.commons.imaging.formats.png.chunks;
 
+import java.io.ByteArrayInputStream;
 import java.io.IOException;
+import java.util.zip.InflaterInputStream;
 
 import org.apache.commons.imaging.ImageReadException;
-import org.apache.commons.imaging.common.ZLibUtils;
+import org.apache.commons.imaging.common.BinaryFunctions;
 import org.apache.commons.imaging.formats.png.PngConstants;
 import org.apache.commons.imaging.formats.png.PngText;
 
@@ -49,11 +51,9 @@ public class PngChunkZtxt extends PngTex
 
         final int compressedTextLength = bytes.length - index;
         final byte compressedText[] = new byte[compressedTextLength];
-        System.arraycopy(bytes, index, compressedText, 0,
-                compressedTextLength);
+        System.arraycopy(bytes, index, compressedText, 0, compressedTextLength);
 
-        text = new String(new ZLibUtils().inflate(compressedText),
-                "ISO-8859-1");
+        text = new String(BinaryFunctions.getStreamBytes(new InflaterInputStream(new ByteArrayInputStream(compressedText))), "ISO-8859-1");
     }
 
     /**