You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2017/04/29 08:21:19 UTC

svn commit: r1793176 - in /directory/shared/trunk: dsml/engine/src/main/java/org/apache/directory/api/dsmlv2/engine/ dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/ ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/ ldap/mod...

Author: elecharny
Date: Sat Apr 29 08:21:18 2017
New Revision: 1793176

URL: http://svn.apache.org/viewvc?rev=1793176&view=rev
Log:
Removde FileIn/OutputSretam

Modified:
    directory/shared/trunk/dsml/engine/src/main/java/org/apache/directory/api/dsmlv2/engine/Dsmlv2Engine.java
    directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2Parser.java
    directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2ResponseParser.java
    directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java
    directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdifAnonymizer.java
    directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/ldif/LdifReader.java
    directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/parsers/OpenLdapSchemaParser.java
    directory/shared/trunk/ldap/schema/converter/src/main/java/org/apache/directory/api/ldap/schema/converter/SchemaParser.java
    directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/extractor/impl/DefaultSchemaLdifExtractor.java
    directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/loader/SingleLdifSchemaLoader.java
    directory/shared/trunk/util/src/main/java/org/apache/directory/api/util/FileUtils.java

Modified: directory/shared/trunk/dsml/engine/src/main/java/org/apache/directory/api/dsmlv2/engine/Dsmlv2Engine.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/dsml/engine/src/main/java/org/apache/directory/api/dsmlv2/engine/Dsmlv2Engine.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/dsml/engine/src/main/java/org/apache/directory/api/dsmlv2/engine/Dsmlv2Engine.java (original)
+++ directory/shared/trunk/dsml/engine/src/main/java/org/apache/directory/api/dsmlv2/engine/Dsmlv2Engine.java Sat Apr 29 08:21:18 2017
@@ -24,7 +24,6 @@ package org.apache.directory.api.dsmlv2.
 import java.io.BufferedWriter;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
-import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
@@ -192,7 +191,7 @@ public class Dsmlv2Engine
      * @throws XmlPullParserException if an error occurs in the parser
      * @throws FileNotFoundException if the file does not exist
      */
-    public String processDSMLFile( String fileName ) throws XmlPullParserException, FileNotFoundException
+    public String processDSMLFile( String fileName ) throws XmlPullParserException, IOException
     {
         parser = new Dsmlv2Parser( grammar );
         parser.setInputFile( fileName );

Modified: directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2Parser.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2Parser.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2Parser.java (original)
+++ directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2Parser.java Sat Apr 29 08:21:18 2017
@@ -20,14 +20,14 @@
 package org.apache.directory.api.dsmlv2;
 
 
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.Reader;
 import java.io.StringReader;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 
 import org.apache.directory.api.dsmlv2.request.BatchRequestDsml;
 import org.apache.directory.api.dsmlv2.request.Dsmlv2Grammar;
@@ -121,10 +121,13 @@ public class Dsmlv2Parser
      * @throws FileNotFoundException if the file does not exist
      * @throws XmlPullParserException if an error occurs in the parser
      */
-    public void setInputFile( String fileName ) throws FileNotFoundException, XmlPullParserException
+    public void setInputFile( String fileName ) throws IOException, XmlPullParserException
     {
-        Reader reader = new InputStreamReader( new FileInputStream( fileName ), Charset.defaultCharset() );
-        container.getParser().setInput( reader );
+        try ( Reader reader = new InputStreamReader( Files.newInputStream( Paths.get( ( fileName ) ) ), 
+            Charset.defaultCharset() ) )
+        {
+            container.getParser().setInput( reader );
+        }
     }
 
 

Modified: directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2ResponseParser.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2ResponseParser.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2ResponseParser.java (original)
+++ directory/shared/trunk/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/Dsmlv2ResponseParser.java Sat Apr 29 08:21:18 2017
@@ -20,14 +20,14 @@
 package org.apache.directory.api.dsmlv2;
 
 
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.Reader;
 import java.io.StringReader;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 
 import org.apache.directory.api.dsmlv2.response.BatchResponseDsml;
 import org.apache.directory.api.dsmlv2.response.Dsmlv2ResponseGrammar;
@@ -91,10 +91,13 @@ public class Dsmlv2ResponseParser
      * @throws FileNotFoundException if the file does not exist
      * @throws XmlPullParserException if an error occurs in the parser
      */
-    public void setInputFile( String fileName ) throws FileNotFoundException, XmlPullParserException
+    public void setInputFile( String fileName ) throws IOException, XmlPullParserException
     {
-        Reader reader = new InputStreamReader( new FileInputStream( fileName ), Charset.defaultCharset() );
-        container.getParser().setInput( reader );
+        try ( Reader reader = new InputStreamReader( Files.newInputStream( Paths.get( fileName ) ), 
+            Charset.defaultCharset() ) )
+        {
+            container.getParser().setInput( reader );
+        }
     }
 
 

Modified: directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java (original)
+++ directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java Sat Apr 29 08:21:18 2017
@@ -23,7 +23,6 @@ package org.apache.directory.ldap.client
 import static org.apache.directory.api.ldap.model.message.ResultCodeEnum.processResponse;
 
 import java.io.File;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.OutputStreamWriter;
 import java.io.Writer;
@@ -32,6 +31,8 @@ import java.net.InetSocketAddress;
 import java.net.SocketAddress;
 import java.nio.channels.UnresolvedAddressException;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.security.PrivilegedExceptionAction;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -4332,7 +4333,8 @@ public class LdapNetworkConnection exten
         File krb5Conf = File.createTempFile( "client-api-krb5", ".conf" );
         krb5Conf.deleteOnExit();
 
-        try ( Writer writer = new OutputStreamWriter( new FileOutputStream( krb5Conf ), Charset.defaultCharset() ) )
+        try ( Writer writer = new OutputStreamWriter( Files.newOutputStream( Paths.get( krb5Conf.getPath() ) ), 
+            Charset.defaultCharset() ) )
         {
             writer.write( sb.toString() );
         }

Modified: directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdifAnonymizer.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdifAnonymizer.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdifAnonymizer.java (original)
+++ directory/shared/trunk/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdifAnonymizer.java Sat Apr 29 08:21:18 2017
@@ -23,12 +23,14 @@ package org.apache.directory.ldap.client
 
 import java.io.BufferedReader;
 import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
+import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.PrintStream;
 import java.io.Writer;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -1071,25 +1073,23 @@ public class LdifAnonymizer
 
         String ldifString = null;
 
-        FileInputStream fis = new FileInputStream( args[0] );
-
-        try ( BufferedReader br = new BufferedReader( new InputStreamReader( fis, Charset.defaultCharset() ) ) )
+        try ( InputStream fis = Files.newInputStream( Paths.get( args[0] ) ) )
         {
-            StringBuilder sb = new StringBuilder();
-            String line = br.readLine();
-
-            while ( line != null )
+    
+            try ( BufferedReader br = new BufferedReader( new InputStreamReader( fis, Charset.defaultCharset() ) ) )
             {
-                sb.append( line );
-                sb.append( System.lineSeparator() );
-                line = br.readLine();
+                StringBuilder sb = new StringBuilder();
+                String line = br.readLine();
+    
+                while ( line != null )
+                {
+                    sb.append( line );
+                    sb.append( System.lineSeparator() );
+                    line = br.readLine();
+                }
+    
+                ldifString = sb.toString();
             }
-
-            ldifString = sb.toString();
-        }
-        finally
-        {
-            fis.close();
         }
 
         String result = anonymizer.anonymize( ldifString );

Modified: directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/ldif/LdifReader.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/ldif/LdifReader.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/ldif/LdifReader.java (original)
+++ directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/ldif/LdifReader.java Sat Apr 29 08:21:18 2017
@@ -24,7 +24,6 @@ import java.io.BufferedReader;
 import java.io.Closeable;
 import java.io.DataInputStream;
 import java.io.File;
-import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.InputStream;
@@ -34,6 +33,8 @@ import java.io.StringReader;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -351,8 +352,9 @@ public class LdifReader implements Itera
 
         try
         {
+            InputStream is = Files.newInputStream( Paths.get( file.getPath() ) );
             initReader(
-                new BufferedReader( new InputStreamReader( new FileInputStream( file ), Charset.defaultCharset() ) ) );
+                new BufferedReader( new InputStreamReader( is, Charset.defaultCharset() ) ) );
         }
         catch ( FileNotFoundException fnfe )
         {
@@ -364,6 +366,10 @@ public class LdifReader implements Itera
         {
             throw new LdapLdifException( lide.getMessage(), lide );
         }
+        catch ( IOException ioe )
+        {
+            throw new LdapLdifException( ioe.getMessage(), ioe );
+        }
         catch ( LdapException le )
         {
             throw new LdapLdifException( le.getMessage(), le );
@@ -691,7 +697,9 @@ public class LdifReader implements Itera
                             else
                             {
                                 byte[] data = new byte[( int ) length];
-                                try ( DataInputStream inf = new DataInputStream( new FileInputStream( file ) ) )
+                                
+                                try ( DataInputStream inf = new DataInputStream( 
+                                    Files.newInputStream( Paths.get( fileName ) ) ) )
                                 {
                                     inf.readFully( data );
 
@@ -1786,9 +1794,9 @@ public class LdifReader implements Itera
 
         // Open the file and then get a channel from the stream
         try ( 
-            FileInputStream fis = new FileInputStream( file );
+            InputStream is = Files.newInputStream( Paths.get( fileName ) );
             BufferedReader bufferReader = new BufferedReader(
-                new InputStreamReader( fis, Charset.forName( encoding ) ) ) )
+                new InputStreamReader( is, Charset.forName( encoding ) ) ) )
         {
             return parseLdif( bufferReader );
         }

Modified: directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/parsers/OpenLdapSchemaParser.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/parsers/OpenLdapSchemaParser.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/parsers/OpenLdapSchemaParser.java (original)
+++ directory/shared/trunk/ldap/model/src/main/java/org/apache/directory/api/ldap/model/schema/parsers/OpenLdapSchemaParser.java Sat Apr 29 08:21:18 2017
@@ -21,11 +21,12 @@ package org.apache.directory.api.ldap.mo
 
 
 import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.text.ParseException;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -329,7 +330,8 @@ public class OpenLdapSchemaParser extend
      */
     public void parse( File schemaFile ) throws IOException, ParseException
     {
-        InputStreamReader in = new InputStreamReader( new FileInputStream( schemaFile ), Charset.defaultCharset() );
+        InputStreamReader in = new InputStreamReader(
+            Files.newInputStream( Paths.get( schemaFile.getPath() ) ), Charset.defaultCharset() );
         lexer.prepareNextInput( in );
         parser.resetState();
 

Modified: directory/shared/trunk/ldap/schema/converter/src/main/java/org/apache/directory/api/ldap/schema/converter/SchemaParser.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/schema/converter/src/main/java/org/apache/directory/api/ldap/schema/converter/SchemaParser.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/ldap/schema/converter/src/main/java/org/apache/directory/api/ldap/schema/converter/SchemaParser.java (original)
+++ directory/shared/trunk/ldap/schema/converter/src/main/java/org/apache/directory/api/ldap/schema/converter/SchemaParser.java Sat Apr 29 08:21:18 2017
@@ -22,11 +22,12 @@ package org.apache.directory.api.ldap.sc
 
 import java.io.ByteArrayInputStream;
 import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.PipedInputStream;
 import java.io.PipedOutputStream;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.text.ParseException;
 import java.util.List;
 
@@ -187,7 +188,7 @@ public class SchemaParser
      */
     public synchronized void parse( File schemaFile ) throws IOException, ParseException
     {
-        schemaIn = new FileInputStream( schemaFile );
+        schemaIn = Files.newInputStream( Paths.get( schemaFile.getPath() ) );
 
         if ( producerThread == null )
         {

Modified: directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/extractor/impl/DefaultSchemaLdifExtractor.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/extractor/impl/DefaultSchemaLdifExtractor.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/extractor/impl/DefaultSchemaLdifExtractor.java (original)
+++ directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/extractor/impl/DefaultSchemaLdifExtractor.java Sat Apr 29 08:21:18 2017
@@ -22,14 +22,16 @@ package org.apache.directory.api.ldap.sc
 
 import java.io.File;
 import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InvalidObjectException;
+import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.io.Writer;
 import java.net.URL;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.util.ArrayDeque;
 import java.util.Deque;
 import java.util.Enumeration;
@@ -212,7 +214,8 @@ public class DefaultSchemaLdifExtractor
             throw new FileNotFoundException( I18n.err( I18n.ERR_08002, source.getAbsolutePath() ) );
         }
 
-        try ( Writer out = new OutputStreamWriter( new FileOutputStream( destination ), Charset.defaultCharset() );
+        try ( Writer out = new OutputStreamWriter( Files.newOutputStream( Paths.get( destination.getPath() ) ), 
+            Charset.defaultCharset() );
             LdifReader ldifReader = new LdifReader( source ) )
         {
             boolean first = true;
@@ -396,7 +399,7 @@ public class DefaultSchemaLdifExtractor
                     .getParentFile().getAbsolutePath() ) );
             }
 
-            FileOutputStream out = new FileOutputStream( destination );
+            OutputStream out = Files.newOutputStream( Paths.get( destination.getPath() ) );
             try
             {
                 while ( in.available() > 0 )

Modified: directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/loader/SingleLdifSchemaLoader.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/loader/SingleLdifSchemaLoader.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/loader/SingleLdifSchemaLoader.java (original)
+++ directory/shared/trunk/ldap/schema/data/src/main/java/org/apache/directory/api/ldap/schema/loader/SingleLdifSchemaLoader.java Sat Apr 29 08:21:18 2017
@@ -21,10 +21,11 @@
 package org.apache.directory.api.ldap.schema.loader;
 
 
-import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.URL;
+import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -110,7 +111,7 @@ public class SingleLdifSchemaLoader exte
                 scObjEntryMap.put( s, new HashMap<String, List<Entry>>() );
             }
 
-            InputStream in = new FileInputStream( schemaFile );
+            InputStream in = Files.newInputStream( Paths.get( schemaFile ) );
 
             initializeSchemas( in );
         }

Modified: directory/shared/trunk/util/src/main/java/org/apache/directory/api/util/FileUtils.java
URL: http://svn.apache.org/viewvc/directory/shared/trunk/util/src/main/java/org/apache/directory/api/util/FileUtils.java?rev=1793176&r1=1793175&r2=1793176&view=diff
==============================================================================
--- directory/shared/trunk/util/src/main/java/org/apache/directory/api/util/FileUtils.java (original)
+++ directory/shared/trunk/util/src/main/java/org/apache/directory/api/util/FileUtils.java Sat Apr 29 08:21:18 2017
@@ -30,6 +30,10 @@ import java.io.InputStream;
 import java.io.OutputStream;
 import java.nio.channels.FileChannel;
 import java.nio.charset.Charset;
+import java.nio.file.Files;
+import java.nio.file.OpenOption;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
 import java.util.List;
 
 
@@ -337,7 +341,7 @@ public final class FileUtils
      * @throws IOException if the file cannot be read
      * @since 1.3
      */
-    public static FileInputStream openInputStream( File file ) throws IOException
+    public static InputStream openInputStream( File file ) throws IOException
     {
         if ( file.exists() )
         {
@@ -356,7 +360,7 @@ public final class FileUtils
             throw new FileNotFoundException( "File '" + file + "' does not exist" );
         }
 
-        return new FileInputStream( file );
+        return Files.newInputStream( Paths.get( file.getPath() ) );
     }
 
 
@@ -443,7 +447,7 @@ public final class FileUtils
      * @throws IOException if a parent directory needs creating but that fails
      * @since 2.1
      */
-    public static FileOutputStream openOutputStream( File file, boolean append ) throws IOException
+    public static OutputStream openOutputStream( File file, boolean append ) throws IOException
     {
         if ( file.exists() )
         {
@@ -470,7 +474,14 @@ public final class FileUtils
             }
         }
 
-        return new FileOutputStream( file, append );
+        OpenOption option = StandardOpenOption.READ;
+        
+        if ( append )
+        {
+            option = StandardOpenOption.APPEND;
+        }
+        
+        return Files.newOutputStream( Paths.get( file.getPath() ), option );
     }
 
 
@@ -658,8 +669,8 @@ public final class FileUtils
 
         try
         {
-            fis = new FileInputStream( srcFile );
-            fos = new FileOutputStream( destFile );
+            fis = ( FileInputStream ) Files.newInputStream( Paths.get( srcFile.getPath() ) );
+            fos = ( FileOutputStream ) Files.newOutputStream( Paths.get( destFile.getPath() ) );
             input = fis.getChannel();
             output = fos.getChannel();
             long size = input.size(); // TODO See IO-386
@@ -810,7 +821,7 @@ public final class FileUtils
      * @throws IOException if a parent directory needs creating but that fails
      * @since 1.3
      */
-    public static FileOutputStream openOutputStream( File file ) throws IOException 
+    public static OutputStream openOutputStream( File file ) throws IOException 
     {
         return openOutputStream( file, false );
     }