org.apache.xml.serializer
Class SerializerTraceWriter
java.lang.Object
|
+--java.io.Writer
|
+--org.apache.xml.serializer.SerializerTraceWriter
- public class SerializerTraceWriter
- extends java.io.Writer
This class wraps the real writer, it only purpose is to send
CHARACTERTOSTREAM events to the trace listener.
Each method immediately sends the call to the wrapped writer unchanged, but
in addition it collects characters to be issued to a trace listener.
In this way the trace
listener knows what characters have been written to the output Writer.
There may still be differences in what the trace events say is going to the
output writer and what is really going there. These differences will be due
to the fact that this class is UTF-8 encoding before emiting the trace event
and the underlying writer may not be UTF-8 encoding. There may also be
encoding differences. So the main pupose of this class is to provide a
resonable facsimile of the true output.
Method Summary |
void |
close()
Flush the internal buffer and close the Writer |
void |
flush()
Flush the internal buffer and flush the Writer |
void |
write(char[] chars,
int start,
int length)
Write a portion of an array of characters. |
void |
write(int c)
Write a single character. |
void |
write(java.lang.String s)
Write a string. |
Methods inherited from class java.io.Writer |
write,
write |
Methods inherited from class java.lang.Object |
equals,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
SerializerTraceWriter
public SerializerTraceWriter(java.io.Writer out,
SerializerTrace tracer)
- Constructor.
If the writer passed in is null, then this SerializerTraceWriter will
only signal trace events of what would have been written to that writer.
If the writer passed in is not null then the trace events will mirror
what is going to that writer. In this way tools, such as a debugger, can
gather information on what is being written out.
- Parameters:
out
- the Writer to write to (possibly null)tracer
- the tracer to inform that characters are being written
flush
public void flush()
throws java.io.IOException
- Flush the internal buffer and flush the Writer
- Overrides:
- flush in class java.io.Writer
- See Also:
Writer.flush()
close
public void close()
throws java.io.IOException
- Flush the internal buffer and close the Writer
- Overrides:
- close in class java.io.Writer
- See Also:
Writer.close()
write
public void write(int c)
throws java.io.IOException
- Write a single character. The character to be written is contained in
the 16 low-order bits of the given integer value; the 16 high-order bits
are ignored.
Subclasses that intend to support efficient single-character output
should override this method.
- Parameters:
c
- int specifying a character to be written.- Throws:
- java.io.IOException - If an I/O error occurs
- Overrides:
- write in class java.io.Writer
write
public void write(char[] chars,
int start,
int length)
throws java.io.IOException
- Write a portion of an array of characters.
- Parameters:
chars
- Array of charactersstart
- Offset from which to start writing characterslength
- Number of characters to write- Throws:
- java.io.IOException - If an I/O error occurs
- java.io.IOException -
- Overrides:
- write in class java.io.Writer
write
public void write(java.lang.String s)
throws java.io.IOException
- Write a string.
- Parameters:
s
- String to be written- Throws:
- java.io.IOException - If an I/O error occurs
- Overrides:
- write in class java.io.Writer
Copyright © 2004 Apache XML Project. All Rights Reserved.