Class StringBufferWriter

java.lang.Object
java.io.Writer
org.codehaus.groovy.runtime.StringBufferWriter
All Implemented Interfaces:
java.io.Closeable, java.io.Flushable, java.lang.Appendable, java.lang.AutoCloseable

public class StringBufferWriter
extends java.io.Writer
This class codes around a silly limitation of StringWriter which doesn't allow a StringBuffer to be passed in as a constructor for some bizarre reason. So we replicate the behaviour of StringWriter here but allow a StringBuffer to be passed in.
  • Field Summary

    Fields inherited from class java.io.Writer

    lock
  • Constructor Summary

    Constructors
    Constructor Description
    StringBufferWriter​(java.lang.StringBuffer buffer)
    Create a new string writer which will append the text to the given StringBuffer
  • Method Summary

    Modifier and Type Method Description
    void close()
    Closing a StringWriter has no effect.
    void flush()
    Flush the stream.
    java.lang.String toString()
    Return the buffer's current value as a string.
    void write​(char[] text, int offset, int length)
    Write a portion of an array of characters.
    void write​(int c)
    Write a single character.
    void write​(java.lang.String text)
    Write a string.
    void write​(java.lang.String text, int offset, int length)
    Write a portion of a string.

    Methods inherited from class java.io.Writer

    append, append, append, nullWriter, write

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • StringBufferWriter

      public StringBufferWriter​(java.lang.StringBuffer buffer)
      Create a new string writer which will append the text to the given StringBuffer
  • Method Details

    • write

      public void write​(int c)
      Write a single character.
      Overrides:
      write in class java.io.Writer
    • write

      public void write​(char[] text, int offset, int length)
      Write a portion of an array of characters.
      Specified by:
      write in class java.io.Writer
      Parameters:
      text - Array of characters
      offset - Offset from which to start writing characters
      length - Number of characters to write
    • write

      public void write​(java.lang.String text)
      Write a string.
      Overrides:
      write in class java.io.Writer
    • write

      public void write​(java.lang.String text, int offset, int length)
      Write a portion of a string.
      Overrides:
      write in class java.io.Writer
      Parameters:
      text - the text to be written
      offset - offset from which to start writing characters
      length - Number of characters to write
    • toString

      public java.lang.String toString()
      Return the buffer's current value as a string.
      Overrides:
      toString in class java.lang.Object
    • flush

      public void flush()
      Flush the stream.
      Specified by:
      flush in interface java.io.Flushable
      Specified by:
      flush in class java.io.Writer
    • close

      public void close() throws java.io.IOException
      Closing a StringWriter has no effect. The methods in this class can be called after the stream has been closed without generating an IOException.
      Specified by:
      close in interface java.lang.AutoCloseable
      Specified by:
      close in interface java.io.Closeable
      Specified by:
      close in class java.io.Writer
      Throws:
      java.io.IOException