gnu.mapping
Class OutPort

java.lang.Object
  extended by java.io.Writer
      extended by java.io.PrintWriter
          extended by gnu.lists.PrintConsumer
              extended by gnu.mapping.OutPort
All Implemented Interfaces:
Consumer, Printable, java.io.Closeable, java.io.Flushable, java.lang.Appendable
Direct Known Subclasses:
CharArrayOutPort, XMLPrinter

public class OutPort
extends PrintConsumer
implements Printable

An extended PrintWriter.


Field Summary
protected  PrettyWriter bout
           
static ThreadLocation errLocation
           
 AbstractFormat objectFormat
           
static ThreadLocation outLocation
           
 boolean printReadable
           
protected  java.lang.Object unregisterRef
          An index into the WriterManager's internal table.
 
Fields inherited from class java.io.PrintWriter
out
 
Fields inherited from class java.io.Writer
lock
 
Constructor Summary
protected OutPort(OutPort out, boolean autoflush)
           
  OutPort(java.io.OutputStream out)
           
  OutPort(java.io.OutputStream out, Path path)
           
  OutPort(java.io.Writer out)
           
protected OutPort(java.io.Writer out, boolean autoflush)
           
  OutPort(java.io.Writer base, boolean printPretty, boolean autoflush)
           
  OutPort(java.io.Writer base, boolean printPretty, boolean autoflush, Path path)
           
  OutPort(java.io.Writer base, boolean autoflush, Path path)
           
  OutPort(java.io.Writer base, Path path)
           
protected OutPort(java.io.Writer base, PrettyWriter out, boolean autoflush)
           
 
Method Summary
 void clearBuffer()
           
 void close()
           
static void closeLogFile()
           
protected  boolean closeOnExit()
          True if the port should be automatically closed on exit.
 void echo(char[] buf, int off, int len)
           
 void endAttribute()
          No more attributes in this element.
 void endElement()
           
 void endLogicalBlock(java.lang.String suffix)
           
static OutPort errDefault()
           
 void freshLine()
           
 int getColumnNumber()
           
protected static boolean isWordChar(char ch)
           
static OutPort openFile(java.lang.Object fname)
           
static OutPort outDefault()
           
 void print(Consumer out)
           
 void print(double v)
           
 void print(float v)
           
 void print(int v)
           
 void print(long v)
           
 void print(java.lang.Object v)
           
 void print(java.lang.String v)
           
static void runCleanups()
           
 void setColumnNumber(int column)
           
static void setErrDefault(OutPort e)
           
 void setIndentation(int amount, boolean current)
           
static void setLogFile(java.lang.String name)
           
static void setOutDefault(OutPort o)
           
 void startAttribute(java.lang.Object attrType)
          Write a attribute for the current element.
 void startElement(java.lang.Object type)
           
 void startLogicalBlock(java.lang.String prefix, boolean perLine, java.lang.String suffix)
           
 void startLogicalBlock(java.lang.String prefix, java.lang.String suffix, int indent)
           
 void writeBreak(int kind)
           
 void writeBreakFill()
           
 void writeBreakLinear()
          Write a new-line iff the containing section cannot be printed on one line.
 void writeSpaceFill()
          Write a new-line if needed, space otherwise.
 void writeSpaceLinear()
           
 void writeWordEnd()
          Note the end of a "word".
 void writeWordStart()
          Maybe write a word-separating space.
 
Methods inherited from class gnu.lists.PrintConsumer
endDocument, endNumber, ignoring, startDocument, startNumber, write, writeBoolean, writeDouble, writeFloat, writeInt, writeLong, writeObject
 
Methods inherited from class java.io.PrintWriter
append, append, append, checkError, flush, format, format, print, print, print, printf, printf, println, println, println, println, println, println, println, println, println, println, setError, write, write, write, write, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface gnu.lists.Consumer
write, write, write
 

Field Detail

bout

protected PrettyWriter bout

unregisterRef

protected java.lang.Object unregisterRef
An index into the WriterManager's internal table. The value zero means it is unregistered.


printReadable

public boolean printReadable

outLocation

public static final ThreadLocation outLocation

errLocation

public static final ThreadLocation errLocation

objectFormat

public AbstractFormat objectFormat
Constructor Detail

OutPort

protected OutPort(java.io.Writer base,
                  PrettyWriter out,
                  boolean autoflush)

OutPort

protected OutPort(OutPort out,
                  boolean autoflush)

OutPort

protected OutPort(java.io.Writer out,
                  boolean autoflush)

OutPort

public OutPort(java.io.Writer base,
               boolean printPretty,
               boolean autoflush)

OutPort

public OutPort(java.io.Writer base,
               boolean printPretty,
               boolean autoflush,
               Path path)

OutPort

public OutPort(java.io.OutputStream out)

OutPort

public OutPort(java.io.OutputStream out,
               Path path)

OutPort

public OutPort(java.io.Writer out)

OutPort

public OutPort(java.io.Writer base,
               Path path)

OutPort

public OutPort(java.io.Writer base,
               boolean autoflush,
               Path path)
Method Detail

outDefault

public static OutPort outDefault()

setOutDefault

public static void setOutDefault(OutPort o)

errDefault

public static OutPort errDefault()

setErrDefault

public static void setErrDefault(OutPort e)

openFile

public static OutPort openFile(java.lang.Object fname)
                        throws java.io.IOException
Throws:
java.io.IOException

echo

public void echo(char[] buf,
                 int off,
                 int len)
          throws java.io.IOException
Throws:
java.io.IOException

closeLogFile

public static void closeLogFile()
                         throws java.io.IOException
Throws:
java.io.IOException

setLogFile

public static void setLogFile(java.lang.String name)
                       throws java.io.IOException
Throws:
java.io.IOException

isWordChar

protected static final boolean isWordChar(char ch)

print

public void print(int v)
Overrides:
print in class java.io.PrintWriter

print

public void print(long v)
Overrides:
print in class java.io.PrintWriter

print

public void print(double v)
Overrides:
print in class java.io.PrintWriter

print

public void print(float v)
Overrides:
print in class java.io.PrintWriter

print

public void print(java.lang.String v)
Overrides:
print in class java.io.PrintWriter

print

public void print(java.lang.Object v)
Overrides:
print in class java.io.PrintWriter

print

public void print(Consumer out)
Specified by:
print in interface Printable

startElement

public void startElement(java.lang.Object type)
Specified by:
startElement in interface Consumer
Overrides:
startElement in class PrintConsumer

endElement

public void endElement()
Specified by:
endElement in interface Consumer
Overrides:
endElement in class PrintConsumer

startAttribute

public void startAttribute(java.lang.Object attrType)
Write a attribute for the current element. This is only allowed immediately after a startElement.

Specified by:
startAttribute in interface Consumer
Overrides:
startAttribute in class PrintConsumer

endAttribute

public void endAttribute()
No more attributes in this element.

Specified by:
endAttribute in interface Consumer
Overrides:
endAttribute in class PrintConsumer

writeWordEnd

public void writeWordEnd()
Note the end of a "word". See writeWordStart().


writeWordStart

public void writeWordStart()
Maybe write a word-separating space. Specifically, write a space if the previous output was writeWordEnd(). Otherwise, do nothing.


freshLine

public void freshLine()

getColumnNumber

public int getColumnNumber()

setColumnNumber

public void setColumnNumber(int column)

clearBuffer

public void clearBuffer()

close

public void close()
Specified by:
close in interface java.io.Closeable
Overrides:
close in class java.io.PrintWriter

closeOnExit

protected boolean closeOnExit()
True if the port should be automatically closed on exit. (If so, it will be registered by WriterManager.


runCleanups

public static void runCleanups()

startLogicalBlock

public void startLogicalBlock(java.lang.String prefix,
                              boolean perLine,
                              java.lang.String suffix)

startLogicalBlock

public void startLogicalBlock(java.lang.String prefix,
                              java.lang.String suffix,
                              int indent)

endLogicalBlock

public void endLogicalBlock(java.lang.String suffix)

writeBreak

public void writeBreak(int kind)

writeSpaceLinear

public void writeSpaceLinear()

writeBreakLinear

public void writeBreakLinear()
Write a new-line iff the containing section cannot be printed on one line. Either all linear-style newlines in a logical block becomes spaces (if it all fits in a line), or none of them do.


writeSpaceFill

public void writeSpaceFill()
Write a new-line if needed, space otherwise.


writeBreakFill

public void writeBreakFill()

setIndentation

public void setIndentation(int amount,
                           boolean current)