Package org.apache.tools.ant.util
Class LeadPipeInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.PipedInputStream
-
- org.apache.tools.ant.util.LeadPipeInputStream
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
public class LeadPipeInputStream extends java.io.PipedInputStream
SpecialPipedInputStream
that will not die when the writingThread
is no longer alive.- Since:
- Ant 1.6.2
-
-
Constructor Summary
Constructors Constructor Description LeadPipeInputStream()
Construct a newLeadPipeInputStream
.LeadPipeInputStream(int size)
Construct a newLeadPipeInputStream
with the specified buffer size.LeadPipeInputStream(java.io.PipedOutputStream src)
Construct a newLeadPipeInputStream
to pull from the specifiedPipedOutputStream
.LeadPipeInputStream(java.io.PipedOutputStream src, int size)
Construct a newLeadPipeInputStream
to pull from the specifiedPipedOutputStream
, using a circular buffer of the specified size.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
log(java.lang.String message, int loglevel)
Log a message with the specified logging level.int
read()
Read a byte from the stream.void
setBufferSize(int size)
Set the size of the buffer.void
setManagingComponent(ProjectComponent pc)
Set a managingProjectComponent
for thisLeadPipeInputStream
.void
setManagingTask(Task task)
Set a managingTask
for thisLeadPipeInputStream
.
-
-
-
Constructor Detail
-
LeadPipeInputStream
public LeadPipeInputStream()
Construct a newLeadPipeInputStream
.
-
LeadPipeInputStream
public LeadPipeInputStream(int size)
Construct a newLeadPipeInputStream
with the specified buffer size.- Parameters:
size
- the size of the circular buffer.
-
LeadPipeInputStream
public LeadPipeInputStream(java.io.PipedOutputStream src) throws java.io.IOException
Construct a newLeadPipeInputStream
to pull from the specifiedPipedOutputStream
.- Parameters:
src
- thePipedOutputStream
source.- Throws:
java.io.IOException
- if unable to construct the stream.
-
LeadPipeInputStream
public LeadPipeInputStream(java.io.PipedOutputStream src, int size) throws java.io.IOException
Construct a newLeadPipeInputStream
to pull from the specifiedPipedOutputStream
, using a circular buffer of the specified size.- Parameters:
src
- thePipedOutputStream
source.size
- the size of the circular buffer.- Throws:
java.io.IOException
- if there is an error.
-
-
Method Detail
-
read
public int read() throws java.io.IOException
Read a byte from the stream.- Overrides:
read
in classjava.io.PipedInputStream
- Returns:
- the byte (0 to 255) or -1 if there are no more.
- Throws:
java.io.IOException
- if there is an error.
-
setBufferSize
public void setBufferSize(int size)
Set the size of the buffer.- Parameters:
size
- the new buffer size. Ignored if <= current size.
-
setManagingTask
public void setManagingTask(Task task)
Set a managingTask
for thisLeadPipeInputStream
.- Parameters:
task
- the managingTask
.
-
setManagingComponent
public void setManagingComponent(ProjectComponent pc)
Set a managingProjectComponent
for thisLeadPipeInputStream
.- Parameters:
pc
- the managingProjectComponent
.
-
log
public void log(java.lang.String message, int loglevel)
Log a message with the specified logging level.- Parameters:
message
- theString
message.loglevel
- theint
logging level.
-
-