Package org.apache.tools.ant
Class DemuxOutputStream
java.lang.Object
java.io.OutputStream
org.apache.tools.ant.DemuxOutputStream
- All Implemented Interfaces:
- Closeable,- Flushable,- AutoCloseable
Logs content written by a thread and forwards the buffers onto the
 project object which will forward the content to the appropriate
 task.
- Since:
- 1.4
- 
Constructor SummaryConstructorsConstructorDescriptionDemuxOutputStream(Project project, boolean isErrorStream) Creates a new instance of this class.
- 
Method SummaryModifier and TypeMethodDescriptionvoidclose()Equivalent to flushing the stream.voidflush()Writes all remaining data in the buffer associated with the current thread to the project.protected voidprocessBuffer(ByteArrayOutputStream buffer) Converts the buffer to a string and sends it to the project.protected voidprocessFlush(ByteArrayOutputStream buffer) Converts the buffer to a string and sends it to the project.voidwrite(byte[] b, int off, int len) Write a block of characters to the output streamvoidwrite(int cc) Writes the data to the buffer and flushes the buffer if a line separator is detected or if the buffer has reached its maximum size.Methods inherited from class java.io.OutputStreamnullOutputStream, write
- 
Constructor Details- 
DemuxOutputStreamCreates a new instance of this class.- Parameters:
- project- The project instance for which output is being demultiplexed. Must not be- null.
- isErrorStream-- trueif this is the error string, otherwise a normal output stream. This is passed to the project so it knows which stream it is receiving.
 
 
- 
- 
Method Details- 
writeWrites the data to the buffer and flushes the buffer if a line separator is detected or if the buffer has reached its maximum size.- Specified by:
- writein class- OutputStream
- Parameters:
- cc- data to log (byte).
- Throws:
- IOException- if the data cannot be written to the stream
 
- 
processBufferConverts the buffer to a string and sends it to the project.- Parameters:
- buffer- the ByteArrayOutputStream used to collect the output until a line separator is seen.
- See Also:
 
- 
processFlushConverts the buffer to a string and sends it to the project.- Parameters:
- buffer- the ByteArrayOutputStream used to collect the output until a line separator is seen.
- See Also:
 
- 
closeEquivalent to flushing the stream.- Specified by:
- closein interface- AutoCloseable
- Specified by:
- closein interface- Closeable
- Overrides:
- closein class- OutputStream
- Throws:
- IOException- if there is a problem closing the stream.
- See Also:
 
- 
flushWrites all remaining data in the buffer associated with the current thread to the project.- Specified by:
- flushin interface- Flushable
- Overrides:
- flushin class- OutputStream
- Throws:
- IOException- if there is a problem flushing the stream.
 
- 
writeWrite a block of characters to the output stream- Overrides:
- writein class- OutputStream
- Parameters:
- b- the array containing the data
- off- the offset into the array where data starts
- len- the length of block
- Throws:
- IOException- if the data cannot be written into the stream.
 
 
-