Package com.sun.javatest.util
Class WrapWriter
- java.lang.Object
-
- java.io.Writer
-
- com.sun.javatest.util.WrapWriter
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.Appendable,java.lang.AutoCloseable
public class WrapWriter extends java.io.WriterA writer that will automatically word wrap lines to fit within left and right margins.
-
-
Constructor Summary
Constructors Constructor Description WrapWriter(java.io.OutputStream out)Create a WrapWriter object that will write to a given stream.WrapWriter(java.io.Writer out)Create a WrapWriter object that will write to a given stream.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()voidflush()intgetCharsOnLineSoFar()Get the number of characters that have been written so far on the current line.intgetLeftMargin()Get the position for the left margin for the text stream.intgetRightMargin()Get the position for the right margin for the text stream.voidsetLeftMargin(int m)Set the position for the left margin for the text stream.voidsetRightMargin(int m)Set the position for the right margin for the text stream.voidwrite(char c)Write a character to the stream.voidwrite(char[] cbuf, int off, int len)
-
-
-
Constructor Detail
-
WrapWriter
public WrapWriter(java.io.OutputStream out)
Create a WrapWriter object that will write to a given stream.- Parameters:
out- the stream to which the WrapWriter will write
-
WrapWriter
public WrapWriter(java.io.Writer out)
Create a WrapWriter object that will write to a given stream.- Parameters:
out- the stream to which the WrapWriter will write
-
-
Method Detail
-
getLeftMargin
public int getLeftMargin()
Get the position for the left margin for the text stream.- Returns:
- the position for the left margin
- See Also:
setLeftMargin(int)
-
setLeftMargin
public void setLeftMargin(int m)
Set the position for the left margin for the text stream.- Parameters:
m- the position for the left margin- Throws:
java.lang.IllegalArgumentException- if the value is negative or greater than the current value of the right margin- See Also:
getLeftMargin()
-
getRightMargin
public int getRightMargin()
Get the position for the right margin for the text stream.- Returns:
- the position for the right margin
- See Also:
setRightMargin(int)
-
setRightMargin
public void setRightMargin(int m)
Set the position for the right margin for the text stream.- Parameters:
m- the position for the right margin- Throws:
java.lang.IllegalArgumentException- if the value is less than the current value of the left margin- See Also:
getRightMargin()
-
getCharsOnLineSoFar
public int getCharsOnLineSoFar()
Get the number of characters that have been written so far on the current line. This will not include any characters in the last word that have not yet been written. Use flush() or write a white space character to force out the last word written.- Returns:
- the number of characters that have been written so far on the line
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Specified by:
closein classjava.io.Writer- Throws:
java.io.IOException
-
flush
public void flush() throws java.io.IOException- Specified by:
flushin interfacejava.io.Flushable- Specified by:
flushin classjava.io.Writer- Throws:
java.io.IOException
-
write
public void write(char[] cbuf, int off, int len) throws java.io.IOException- Specified by:
writein classjava.io.Writer- Throws:
java.io.IOException
-
write
public void write(char c) throws java.io.IOExceptionWrite a character to the stream. Non-white-space characters will be buffered until a white space character is written. When a white space character is written, the buffered characters will be written on the current line, if they will fit before the right margin, otherwise a newline and spaces will be inserted so that the buffered characters appear on the next line starting at the left margin.- Parameters:
c- the character to be written- Throws:
java.io.IOException- if there is a problem writing to the underlying stream
-
-