[gatein-commits] gatein SVN: r1634 - maven/packager/trunk/src/main/javascript/eXo/core.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Feb 11 08:02:05 EST 2010


Author: thomas.heute at jboss.com
Date: 2010-02-11 08:02:05 -0500 (Thu, 11 Feb 2010)
New Revision: 1634

Modified:
   maven/packager/trunk/src/main/javascript/eXo/core/IOUtil.js
Log:
Could be handy.
Not using it so far though.

Modified: maven/packager/trunk/src/main/javascript/eXo/core/IOUtil.js
===================================================================
--- maven/packager/trunk/src/main/javascript/eXo/core/IOUtil.js	2010-02-11 12:59:00 UTC (rev 1633)
+++ maven/packager/trunk/src/main/javascript/eXo/core/IOUtil.js	2010-02-11 13:02:05 UTC (rev 1634)
@@ -275,6 +275,39 @@
   zos.close() ;
 }
 
+IOUtil.prototype.unzip = function(zipName, dest) {
+	eXo.System.info("[INFO] Extracting: " + zipName + " to " + dest);
+	
+	var zipFile = new java.util.zip.ZipFile(zipName);
+	  var destDir = new java.io.File(dest);
+	  if(!destDir.exists()) destDir.mkdirs();
+
+      var entries = zipFile.entries();
+	  
+      while(entries.hasMoreElements()) {
+          var entry = entries.nextElement();
+
+          if(entry.isDirectory()) {
+            new java.io.File(dest + "/" + entry.getName()).mkdir();
+            continue;
+          }
+          
+          var input = zipFile.getInputStream(entry);
+          var output = new java.io.FileOutputStream(dest + "/" + entry.getName());
+          var buffer = this.createByteArray(12) ;
+          var len;
+
+          while((len = input.read(buffer)) >= 0)
+        	  output.write(buffer, 0, len);
+
+          input.close();
+          output.close();
+
+        }
+
+        zipFile.close();
+	}
+
 IOUtil.prototype.ear = function(src, dest) {
   this.log = true;
   var srcFile = new java.io.File(src) ;  



More information about the gatein-commits mailing list