Author: nick
Date: Wed Mar 30 11:34:12 2011
New Revision: 1086909

URL: http://svn.apache.org/viewvc?rev=1086909&view=rev
Log:
Implement the load method on MemoryPackagePart

Modified:
    poi/trunk/src/documentation/content/xdocs/status.xml
    
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/MemoryPackagePart.java

Modified: poi/trunk/src/documentation/content/xdocs/status.xml
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/documentation/content/xdocs/status.xml?rev=1086909&r1=1086908&r2=1086909&view=diff
==============================================================================
--- poi/trunk/src/documentation/content/xdocs/status.xml (original)
+++ poi/trunk/src/documentation/content/xdocs/status.xml Wed Mar 30 11:34:12 
2011
@@ -34,6 +34,7 @@
 
     <changes>
         <release version="3.8-beta2" date="2011-??-??">
+           <action dev="poi-developers" type="add">Implement the load method 
on MemoryPackagePart</action>
            <action dev="poi-developers" type="add">50967 - Support for 
continued ExtSSTRecords</action>
            <action dev="poi-developers" type="add">48968 - Support for HOUR, 
MINUTE and SECOND date formulas</action>
            <action dev="poi-developers" type="add">Added NPOIFS constructors 
to most POIDocument classes and their extractors, and more widely deprecated 
the Document(DirectoryNode, POIFSFileSystem) constructor in favour of the more 
general Document(DirectoryNode) one</action>

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/MemoryPackagePart.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/MemoryPackagePart.java?rev=1086909&r1=1086908&r2=1086909&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/MemoryPackagePart.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/MemoryPackagePart.java
 Wed Mar 30 11:34:12 2011
@@ -18,6 +18,8 @@
 package org.apache.poi.openxml4j.opc.internal;
 
 import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 
@@ -27,6 +29,7 @@ import org.apache.poi.openxml4j.opc.OPCP
 import org.apache.poi.openxml4j.opc.PackagePart;
 import org.apache.poi.openxml4j.opc.PackagePartName;
 import org.apache.poi.openxml4j.opc.internal.marshallers.ZipPartMarshaller;
+import org.apache.poi.util.IOUtils;
 
 /**
  * Memory version of a package part. Use to
@@ -111,7 +114,20 @@ public final class MemoryPackagePart ext
 
        @Override
        public boolean load(InputStream ios) throws InvalidFormatException {
-               throw new InvalidFormatException("Method not implemented");
+          // Grab the data
+          ByteArrayOutputStream baos = new ByteArrayOutputStream();
+          try {
+             IOUtils.copy(ios, baos);
+          } catch(IOException e) {
+             throw new InvalidFormatException(e.getMessage());
+          }
+          
+          // Save it
+          data = baos.toByteArray();
+          length = data.length;
+          
+          // All done
+          return true;
        }
 
        @Override



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to