You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by sj...@apache.org on 2008/01/30 13:23:43 UTC

svn commit: r616737 - in /harmony/enhanced/classlib/trunk/modules/pack200/src: main/java/org/apache/harmony/pack200/Archive.java test/java/org/apache/harmony/pack200/tests/ArchiveTest.java

Author: sjanuary
Date: Wed Jan 30 04:23:43 2008
New Revision: 616737

URL: http://svn.apache.org/viewvc?rev=616737&view=rev
Log:
Setting svn:eol-style property to native 

Modified:
    harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/pack200/Archive.java   (contents, props changed)
    harmony/enhanced/classlib/trunk/modules/pack200/src/test/java/org/apache/harmony/pack200/tests/ArchiveTest.java   (contents, props changed)

Modified: harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/pack200/Archive.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/pack200/Archive.java?rev=616737&r1=616736&r2=616737&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/pack200/Archive.java (original)
+++ harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/pack200/Archive.java Wed Jan 30 04:23:43 2008
@@ -1,157 +1,157 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.harmony.pack200;
-
-import java.io.BufferedInputStream;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.jar.JarOutputStream;
-import java.util.zip.GZIPInputStream;
-
-/**
- * The Archive class is the main entry point to unpack200. An archive is
- * constructed with either two file names, a pack file and an output file name
- * or two input streams corresponding to the input and the output streams. Then
- * <code>unpack()</code> is called, to unpack the pack200 archive.
- */
-public class Archive {
-
-    private static final int LOG_LEVEL_VERBOSE = 2;
-
-    private static final int LOG_LEVEL_STANDARD = 1;
-
-    private static final int LOG_LEVEL_QUIET = 0;
-
-    private InputStream inputStream;
-
-    private JarOutputStream outputStream;
-
-    private boolean removePackFile;
-
-    private int logLevel = LOG_LEVEL_STANDARD;
-
-    private FileOutputStream logFile;
-
-    private boolean overrideDeflateHint;
-
-    private boolean deflateHint;
-
-    public Archive(String inputFile, String outputFile)
-            throws FileNotFoundException, IOException {
-        inputStream = new FileInputStream(inputFile);
-        outputStream = new JarOutputStream(new FileOutputStream(outputFile));
-    }
-
-    public Archive(InputStream inputStream, JarOutputStream outputStream)
-            throws FileNotFoundException, IOException {
-        this.inputStream = inputStream;
-        this.outputStream = outputStream;
-    }
-
-    public void unpack() throws Pack200Exception, IOException {
-        outputStream.setComment("PACK200");
-        try {
-            if (!inputStream.markSupported()) {
-                inputStream = new BufferedInputStream(inputStream);
-                if (!inputStream.markSupported())
-                    throw new IllegalStateException();
-            }
-            inputStream.mark(2);
-            if (((inputStream.read() & 0xFF) | (inputStream.read() & 0xFF) << 8) == GZIPInputStream.GZIP_MAGIC) {
-                inputStream.reset();
-                inputStream = new BufferedInputStream(new GZIPInputStream(
-                        inputStream));
-            } else {
-                inputStream.reset();
-            }
-            inputStream.mark(4);
-            int[] jarMagic = { 0xCA, 0xFE, 0xBA, 0xBE }; // Magic word for a Jar file
-            byte word[] = new byte[4];
-            inputStream.read(word);
-            boolean compressedWithE0 = true;
-            for (int m = 0; m < jarMagic.length; m++) {
-                if (word[m] != jarMagic[m]) {
-                    compressedWithE0 = false;
-                }
-            }
-            inputStream.reset();
-            if(compressedWithE0) { // The original Jar was not packed, so just copy it across
-                byte[] bytes = new byte[16384];
-                int bytesRead = 0;
-                while(bytesRead != -1) {
-                    bytesRead = inputStream.read(bytes);                    
-                    outputStream.write(bytes, 0, bytesRead);
-                }
-            } else {
-                while (inputStream.available() > 0) {
-                    Segment segment = new Segment();
-                    segment.setLogLevel(logLevel);
-                    segment.setLogStream(logFile != null ? (OutputStream) logFile
-                            : (OutputStream) System.out);
-                    if (overrideDeflateHint) {
-                        segment.overrideDeflateHint(deflateHint);
-                    }
-                    segment.unpack(inputStream, outputStream);
-                }
-            }
-        } catch (IOException e) {
-            try {
-                inputStream.close();
-            } finally {
-                outputStream.close();
-            }
-        }
-        if (removePackFile) {
-
-        }
-    }
-
-    public void setRemovePackFile(boolean removePackFile) {
-        this.removePackFile = removePackFile;
-    }
-
-    public void setVerbose(boolean verbose) {
-        if (verbose) {
-            logLevel = LOG_LEVEL_VERBOSE;
-        } else if (logLevel == LOG_LEVEL_VERBOSE) {
-            logLevel = LOG_LEVEL_STANDARD;
-        }
-    }
-
-    public void setQuiet(boolean quiet) {
-        if (quiet) {
-            logLevel = LOG_LEVEL_QUIET;
-        } else if (logLevel == LOG_LEVEL_QUIET) {
-            logLevel = LOG_LEVEL_QUIET;
-        }
-        ;
-    }
-
-    public void setLogFile(String logFileName) throws FileNotFoundException {
-        this.logFile = new FileOutputStream(logFileName);
-    }
-
-    public void setDeflateHint(boolean deflateHint) {
-        overrideDeflateHint = true;
-        this.deflateHint = deflateHint;
-    }
-
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.harmony.pack200;
+
+import java.io.BufferedInputStream;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.jar.JarOutputStream;
+import java.util.zip.GZIPInputStream;
+
+/**
+ * The Archive class is the main entry point to unpack200. An archive is
+ * constructed with either two file names, a pack file and an output file name
+ * or two input streams corresponding to the input and the output streams. Then
+ * <code>unpack()</code> is called, to unpack the pack200 archive.
+ */
+public class Archive {
+
+    private static final int LOG_LEVEL_VERBOSE = 2;
+
+    private static final int LOG_LEVEL_STANDARD = 1;
+
+    private static final int LOG_LEVEL_QUIET = 0;
+
+    private InputStream inputStream;
+
+    private JarOutputStream outputStream;
+
+    private boolean removePackFile;
+
+    private int logLevel = LOG_LEVEL_STANDARD;
+
+    private FileOutputStream logFile;
+
+    private boolean overrideDeflateHint;
+
+    private boolean deflateHint;
+
+    public Archive(String inputFile, String outputFile)
+            throws FileNotFoundException, IOException {
+        inputStream = new FileInputStream(inputFile);
+        outputStream = new JarOutputStream(new FileOutputStream(outputFile));
+    }
+
+    public Archive(InputStream inputStream, JarOutputStream outputStream)
+            throws FileNotFoundException, IOException {
+        this.inputStream = inputStream;
+        this.outputStream = outputStream;
+    }
+
+    public void unpack() throws Pack200Exception, IOException {
+        outputStream.setComment("PACK200");
+        try {
+            if (!inputStream.markSupported()) {
+                inputStream = new BufferedInputStream(inputStream);
+                if (!inputStream.markSupported())
+                    throw new IllegalStateException();
+            }
+            inputStream.mark(2);
+            if (((inputStream.read() & 0xFF) | (inputStream.read() & 0xFF) << 8) == GZIPInputStream.GZIP_MAGIC) {
+                inputStream.reset();
+                inputStream = new BufferedInputStream(new GZIPInputStream(
+                        inputStream));
+            } else {
+                inputStream.reset();
+            }
+            inputStream.mark(4);
+            int[] jarMagic = { 0xCA, 0xFE, 0xBA, 0xBE }; // Magic word for a Jar file
+            byte word[] = new byte[4];
+            inputStream.read(word);
+            boolean compressedWithE0 = true;
+            for (int m = 0; m < jarMagic.length; m++) {
+                if (word[m] != jarMagic[m]) {
+                    compressedWithE0 = false;
+                }
+            }
+            inputStream.reset();
+            if(compressedWithE0) { // The original Jar was not packed, so just copy it across
+                byte[] bytes = new byte[16384];
+                int bytesRead = 0;
+                while(bytesRead != -1) {
+                    bytesRead = inputStream.read(bytes);                    
+                    outputStream.write(bytes, 0, bytesRead);
+                }
+            } else {
+                while (inputStream.available() > 0) {
+                    Segment segment = new Segment();
+                    segment.setLogLevel(logLevel);
+                    segment.setLogStream(logFile != null ? (OutputStream) logFile
+                            : (OutputStream) System.out);
+                    if (overrideDeflateHint) {
+                        segment.overrideDeflateHint(deflateHint);
+                    }
+                    segment.unpack(inputStream, outputStream);
+                }
+            }
+        } catch (IOException e) {
+            try {
+                inputStream.close();
+            } finally {
+                outputStream.close();
+            }
+        }
+        if (removePackFile) {
+
+        }
+    }
+
+    public void setRemovePackFile(boolean removePackFile) {
+        this.removePackFile = removePackFile;
+    }
+
+    public void setVerbose(boolean verbose) {
+        if (verbose) {
+            logLevel = LOG_LEVEL_VERBOSE;
+        } else if (logLevel == LOG_LEVEL_VERBOSE) {
+            logLevel = LOG_LEVEL_STANDARD;
+        }
+    }
+
+    public void setQuiet(boolean quiet) {
+        if (quiet) {
+            logLevel = LOG_LEVEL_QUIET;
+        } else if (logLevel == LOG_LEVEL_QUIET) {
+            logLevel = LOG_LEVEL_QUIET;
+        }
+        ;
+    }
+
+    public void setLogFile(String logFileName) throws FileNotFoundException {
+        this.logFile = new FileOutputStream(logFileName);
+    }
+
+    public void setDeflateHint(boolean deflateHint) {
+        overrideDeflateHint = true;
+        this.deflateHint = deflateHint;
+    }
+
 }

Propchange: harmony/enhanced/classlib/trunk/modules/pack200/src/main/java/org/apache/harmony/pack200/Archive.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: harmony/enhanced/classlib/trunk/modules/pack200/src/test/java/org/apache/harmony/pack200/tests/ArchiveTest.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/pack200/src/test/java/org/apache/harmony/pack200/tests/ArchiveTest.java?rev=616737&r1=616736&r2=616737&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/pack200/src/test/java/org/apache/harmony/pack200/tests/ArchiveTest.java (original)
+++ harmony/enhanced/classlib/trunk/modules/pack200/src/test/java/org/apache/harmony/pack200/tests/ArchiveTest.java Wed Jan 30 04:23:43 2008
@@ -1,124 +1,124 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-package org.apache.harmony.pack200.tests;
-
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.jar.JarOutputStream;
-
-import junit.framework.TestCase;
-
-import org.apache.harmony.pack200.Archive;
-
-/**
- * Tests for org.apache.harmony.pack200.Archive, which is the main class for unpack200.
- */
-public class ArchiveTest extends TestCase {
-
-    InputStream in;
-    JarOutputStream out;
-
-    public void testJustResourcesGZip() throws Exception {
-       in = Archive.class
-                .getResourceAsStream("/org/apache/harmony/pack200/tests/JustResources.pack.gz");
-        out = new JarOutputStream(new FileOutputStream(File.createTempFile("Just", "ResourcesGz.jar")));
-        Archive archive = new Archive(in, out);
-        archive.unpack();
-    }
-
-    // Test with an archive containing Harmony's SQL module, packed with -E1
-    public void testWithSqlE1() throws Exception {
-        in = Archive.class
-                .getResourceAsStream("/org/apache/harmony/pack200/tests/sql-e1.pack.gz");
-        out = new JarOutputStream(new FileOutputStream(File.createTempFile("sql-e1", ".jar")));
-        Archive archive = new Archive(in, out);
-        archive.unpack();
-    }
-
-    // Test with an archive containing Harmony's SQL module
-    public void testWithSql() throws Exception {
-        in = Archive.class
-                .getResourceAsStream("/org/apache/harmony/pack200/tests/sql.pack.gz");
-        out = new JarOutputStream(new FileOutputStream(File.createTempFile("sql", ".jar")));
-        Archive archive = new Archive(in, out);
-        archive.unpack();
-    }
-
-    // Test with an archive containing Harmony's Pack200 module, packed with -E1
-    public void testWithPack200E1() throws Exception {
-        in = Archive.class
-                .getResourceAsStream("/org/apache/harmony/pack200/tests/pack200-e1.pack.gz");
-        out = new JarOutputStream(new FileOutputStream(File.createTempFile("pack", "200-e1.jar")));
-        Archive archive = new Archive(in, out);
-        archive.unpack();
-    }
-
-    // Test with an archive containing Harmony's Pack200 module
-    public void testWithPack200() throws Exception {
-        in = Archive.class
-                .getResourceAsStream("/org/apache/harmony/pack200/tests/pack200.pack.gz");
-        out = new JarOutputStream(new FileOutputStream(File.createTempFile("pack", "200.jar")));
-        Archive archive = new Archive(in, out);
-        archive.unpack();
-    }
-
-    // Test with an archive containing Harmony's JNDI module
-    public void testWithJNDIE1() throws Exception {
-        in = Archive.class
-                .getResourceAsStream("/org/apache/harmony/pack200/tests/jndi-e1.pack.gz");
-        out = new JarOutputStream(new FileOutputStream(File.createTempFile("jndi", "-e1.jar")));
-        Archive archive = new Archive(in, out);
-        archive.unpack();
-    }
-
-    // Test with an archive containing Annotations
-    public void testWithAnnotations() throws Exception {
-        in = Archive.class
-                .getResourceAsStream("/org/apache/harmony/pack200/tests/annotations.pack.gz");
-        out = new JarOutputStream(new FileOutputStream(File.createTempFile("ann", "otations.jar")));
-        Archive archive = new Archive(in, out);
-        archive.unpack();
-    }
-
-    protected void tearDown() throws Exception {
-        super.tearDown();
-        try {
-            if (in != null) {
-                try {
-                    in.close();
-                } catch (IOException e) {
-                    e.printStackTrace();
-                }
-            }
-        } finally {
-            try {
-                if (out != null) {
-                    out.close();
-                }
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
-        }
-    }
-
-
-
-
-
-}
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.harmony.pack200.tests;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.jar.JarOutputStream;
+
+import junit.framework.TestCase;
+
+import org.apache.harmony.pack200.Archive;
+
+/**
+ * Tests for org.apache.harmony.pack200.Archive, which is the main class for unpack200.
+ */
+public class ArchiveTest extends TestCase {
+
+    InputStream in;
+    JarOutputStream out;
+
+    public void testJustResourcesGZip() throws Exception {
+       in = Archive.class
+                .getResourceAsStream("/org/apache/harmony/pack200/tests/JustResources.pack.gz");
+        out = new JarOutputStream(new FileOutputStream(File.createTempFile("Just", "ResourcesGz.jar")));
+        Archive archive = new Archive(in, out);
+        archive.unpack();
+    }
+
+    // Test with an archive containing Harmony's SQL module, packed with -E1
+    public void testWithSqlE1() throws Exception {
+        in = Archive.class
+                .getResourceAsStream("/org/apache/harmony/pack200/tests/sql-e1.pack.gz");
+        out = new JarOutputStream(new FileOutputStream(File.createTempFile("sql-e1", ".jar")));
+        Archive archive = new Archive(in, out);
+        archive.unpack();
+    }
+
+    // Test with an archive containing Harmony's SQL module
+    public void testWithSql() throws Exception {
+        in = Archive.class
+                .getResourceAsStream("/org/apache/harmony/pack200/tests/sql.pack.gz");
+        out = new JarOutputStream(new FileOutputStream(File.createTempFile("sql", ".jar")));
+        Archive archive = new Archive(in, out);
+        archive.unpack();
+    }
+
+    // Test with an archive containing Harmony's Pack200 module, packed with -E1
+    public void testWithPack200E1() throws Exception {
+        in = Archive.class
+                .getResourceAsStream("/org/apache/harmony/pack200/tests/pack200-e1.pack.gz");
+        out = new JarOutputStream(new FileOutputStream(File.createTempFile("pack", "200-e1.jar")));
+        Archive archive = new Archive(in, out);
+        archive.unpack();
+    }
+
+    // Test with an archive containing Harmony's Pack200 module
+    public void testWithPack200() throws Exception {
+        in = Archive.class
+                .getResourceAsStream("/org/apache/harmony/pack200/tests/pack200.pack.gz");
+        out = new JarOutputStream(new FileOutputStream(File.createTempFile("pack", "200.jar")));
+        Archive archive = new Archive(in, out);
+        archive.unpack();
+    }
+
+    // Test with an archive containing Harmony's JNDI module
+    public void testWithJNDIE1() throws Exception {
+        in = Archive.class
+                .getResourceAsStream("/org/apache/harmony/pack200/tests/jndi-e1.pack.gz");
+        out = new JarOutputStream(new FileOutputStream(File.createTempFile("jndi", "-e1.jar")));
+        Archive archive = new Archive(in, out);
+        archive.unpack();
+    }
+
+    // Test with an archive containing Annotations
+    public void testWithAnnotations() throws Exception {
+        in = Archive.class
+                .getResourceAsStream("/org/apache/harmony/pack200/tests/annotations.pack.gz");
+        out = new JarOutputStream(new FileOutputStream(File.createTempFile("ann", "otations.jar")));
+        Archive archive = new Archive(in, out);
+        archive.unpack();
+    }
+
+    protected void tearDown() throws Exception {
+        super.tearDown();
+        try {
+            if (in != null) {
+                try {
+                    in.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        } finally {
+            try {
+                if (out != null) {
+                    out.close();
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+
+
+
+
+}

Propchange: harmony/enhanced/classlib/trunk/modules/pack200/src/test/java/org/apache/harmony/pack200/tests/ArchiveTest.java
------------------------------------------------------------------------------
    svn:eol-style = native