Author: ggregory
Date: Mon Jun 13 07:28:33 2016
New Revision: 1748106
URL: http://svn.apache.org/viewvc?rev=1748106&view=rev
Log:
Use try-with-resources. Note that ByteArrayOuputStream#close() is a noop so it
is OK to move BAOS.toByteArray() inside a try-w-resources block.
Modified:
commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Utility.java
Modified:
commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Utility.java
URL:
http://svn.apache.org/viewvc/commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Utility.java?rev=1748106&r1=1748105&r2=1748106&view=diff
==============================================================================
---
commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Utility.java
(original)
+++
commons/proper/bcel/trunk/src/main/java/org/apache/bcel/classfile/Utility.java
Mon Jun 13 07:28:33 2016
@@ -1264,14 +1264,13 @@ public abstract class Utility {
*
* @throws IOException if there's a gzip exception
*/
- public static String encode( byte[] bytes, final boolean compress ) throws
IOException {
+ public static String encode(byte[] bytes, final boolean compress) throws
IOException {
if (compress) {
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- GZIPOutputStream gos = new GZIPOutputStream(baos);
- gos.write(bytes, 0, bytes.length);
- gos.close();
- baos.close();
- bytes = baos.toByteArray();
+ try (ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ GZIPOutputStream gos = new GZIPOutputStream(baos)) {
+ gos.write(bytes, 0, bytes.length);
+ bytes = baos.toByteArray();
+ }
}
CharArrayWriter caw = new CharArrayWriter();
try (JavaWriter jw = new JavaWriter(caw)) {
@@ -1292,19 +1291,16 @@ public abstract class Utility {
*
* @throws IOException if there's a gzip exception
*/
- public static byte[] decode( final String s, final boolean uncompress )
throws IOException {
- char[] chars = s.toCharArray();
- CharArrayReader car = new CharArrayReader(chars);
- JavaReader jr = new JavaReader(car);
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- int ch;
- while ((ch = jr.read()) >= 0) {
- bos.write(ch);
+ public static byte[] decode(final String s, final boolean uncompress)
throws IOException {
+ byte[] bytes;
+ try (JavaReader jr = new JavaReader(new
CharArrayReader(s.toCharArray()));
+ ByteArrayOutputStream bos = new ByteArrayOutputStream()) {
+ int ch;
+ while ((ch = jr.read()) >= 0) {
+ bos.write(ch);
+ }
+ bytes = bos.toByteArray();
}
- bos.close();
- car.close();
- jr.close();
- byte[] bytes = bos.toByteArray();
if (uncompress) {
GZIPInputStream gis = new GZIPInputStream(new
ByteArrayInputStream(bytes));
byte[] tmp = new byte[bytes.length * 3]; // Rough estimate