Author: nick
Date: Thu Sep 11 08:48:10 2014
New Revision: 1624226

URL: http://svn.apache.org/r1624226
Log:
Patch from Daniel Bonniot from bug #56956 - Add a NPOIFSFileSystem constructor 
with a FileChannel and the read-only option

Modified:
    poi/trunk/src/java/org/apache/poi/poifs/filesystem/NPOIFSFileSystem.java

Modified: 
poi/trunk/src/java/org/apache/poi/poifs/filesystem/NPOIFSFileSystem.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/filesystem/NPOIFSFileSystem.java?rev=1624226&r1=1624225&r2=1624226&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/poifs/filesystem/NPOIFSFileSystem.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/poifs/filesystem/NPOIFSFileSystem.java 
Thu Sep 11 08:48:10 2014
@@ -153,7 +153,8 @@ public class NPOIFSFileSystem extends Bl
      *  when you're done to have the underlying file closed, as the file is
      *  kept open during normal operation to read the data out.</p> 
      *  
-     * @param file the File from which to read the data
+     * @param file the File from which to read or read/write the data
+     * @param readOnly whether the POIFileSystem will only be used in 
read-only mode
      *
      * @exception IOException on errors reading, or on invalid data
      */
@@ -165,7 +166,8 @@ public class NPOIFSFileSystem extends Bl
     
     /**
      * <p>Creates a POIFSFileSystem from an open <tt>FileChannel</tt>. This 
uses 
-     *  less memory than creating from an <tt>InputStream</tt>.</p>
+     *  less memory than creating from an <tt>InputStream</tt>. The stream will
+     *  be used in read-write mode.</p>
      *  
      * <p>Note that with this constructor, you will need to call {@link 
#close()}
      *  when you're done to have the underlying Channel closed, as the channel 
is
@@ -181,6 +183,25 @@ public class NPOIFSFileSystem extends Bl
        this(channel, null, false, false);
     }
     
+    /**
+     * <p>Creates a POIFSFileSystem from an open <tt>FileChannel</tt>. This 
uses 
+     *  less memory than creating from an <tt>InputStream</tt>.</p>
+     *  
+     * <p>Note that with this constructor, you will need to call {@link 
#close()}
+     *  when you're done to have the underlying Channel closed, as the channel 
is
+     *  kept open during normal operation to read the data out.</p> 
+     *  
+     * @param channel the FileChannel from which to read or read/write the data
+     * @param readOnly whether the POIFileSystem will only be used in 
read-only mode
+     *
+     * @exception IOException on errors reading, or on invalid data
+     */
+    public NPOIFSFileSystem(FileChannel channel, boolean readOnly)
+         throws IOException
+    {
+       this(channel, null, readOnly, false);
+    }
+    
     private NPOIFSFileSystem(FileChannel channel, File srcFile, boolean 
readOnly, boolean closeChannelOnError)
          throws IOException
     {



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

Reply via email to