Hi Thomas, On Sun, 2006-07-16 at 00:45 -0400, Thomas Minor wrote: > This patch adds four missing constructors to java.io.Printstream.
Nice. Thanks. Just this week I was writing some code that needed to create a PrintStream from a File and was cursing that I needed to write so much boiler code! I added a note about these autoflushing and @since tags to indicate that these are new 1.5 additions. And fixed a spelling mistake (that was already there before your patch). Committed as follows: 2006-07-16 Thomas Minor <[EMAIL PROTECTED]> Mark Wielaard <[EMAIL PROTECTED]> * java/io/PrintStream.java: Added four constructors, for File and String describing a filename with or without explicit encoding. Since these are small and obviously correct this is fine to go in. But for larger contributions we would like to have paperwork on file with the FSF to have a clear trail of where all our code comes from. Please take a look at the GNU Classpath Hacker guide and contact me off-list if you are interested in contributing more. http://www.gnu.org/software/classpath/docs/hacking.html#SEC2 Thanks, Mark
Index: java/io/PrintStream.java =================================================================== RCS file: /cvsroot/classpath/classpath/java/io/PrintStream.java,v retrieving revision 1.26 diff -u -r1.26 PrintStream.java --- java/io/PrintStream.java 13 Jan 2006 07:44:34 -0000 1.26 +++ java/io/PrintStream.java 16 Jul 2006 11:55:39 -0000 @@ -87,8 +87,76 @@ private boolean auto_flush; /** - * This method intializes a new <code>PrintStream</code> object to write - * to the specified output sink. + * This method initializes a new <code>PrintStream</code> object to write + * to the specified output File. Doesn't autoflush. + * + * @param file The <code>File</code> to write to. + * @throws FileNotFoundException if an error occurs while opening the file. + * + * @since 1.5 + */ + public PrintStream (File file) + throws FileNotFoundException + { + this (new FileOutputStream(file), false); + } + + /** + * This method initializes a new <code>PrintStream</code> object to write + * to the specified output File. Doesn't autoflush. + * + * @param file The <code>File</code> to write to. + * @param encoding The name of the character encoding to use for this + * object. + * @throws FileNotFoundException If an error occurs while opening the file. + * @throws UnsupportedEncodingException If the charset specified by + * <code>encoding</code> is invalid. + * + * @since 1.5 + */ + public PrintStream (File file, String encoding) + throws FileNotFoundException,UnsupportedEncodingException + { + this (new FileOutputStream(file), false, encoding); + } + + /** + * This method initializes a new <code>PrintStream</code> object to write + * to the specified output File. Doesn't autoflush. + * + * @param fileName The name of the <code>File</code> to write to. + * @throws FileNotFoundException if an error occurs while opening the file, + * + * @since 1.5 + */ + public PrintStream (String fileName) + throws FileNotFoundException + { + this (new FileOutputStream(new File(fileName)), false); + } + + /** + * This method initializes a new <code>PrintStream</code> object to write + * to the specified output File. Doesn't autoflush. + * + * @param fileName The name of the <code>File</code> to write to. + * @param encoding The name of the character encoding to use for this + * object. + * @throws FileNotFoundException if an error occurs while opening the file. + * @throws UnsupportedEncodingException If the charset specified by + * <code>encoding</code> is invalid. + * + * @since 1.5 + */ + public PrintStream (String fileName, String encoding) + throws FileNotFoundException,UnsupportedEncodingException + { + this (new FileOutputStream(new File(fileName)), false, encoding); + } + + /** + * This method initializes a new <code>PrintStream</code> object to write + * to the specified output sink. Doesn't autoflush. * * @param out The <code>OutputStream</code> to write to. */ @@ -98,7 +166,7 @@ } /** - * This method intializes a new <code>PrintStream</code> object to write + * This method initializes a new <code>PrintStream</code> object to write * to the specified output sink. This constructor also allows "auto-flush" * functionality to be specified where the stream will be flushed after * every <code>print</code> or <code>println</code> call, when the @@ -127,7 +195,7 @@ } /** - * This method intializes a new <code>PrintStream</code> object to write + * This method initializes a new <code>PrintStream</code> object to write * to the specified output sink. This constructor also allows "auto-flush" * functionality to be specified where the stream will be flushed after * every <code>print</code> or <code>println</code> call, when the