org.apache.tools.ant.util

Class OutputStreamFunneler


public class OutputStreamFunneler
extends java.lang.Object

Manages a set of OutputStreams to write to a single underlying stream, which is closed only when the last "funnel" has been closed.

Field Summary

static long
DEFAULT_TIMEOUT_MILLIS
Default timeout.

Constructor Summary

OutputStreamFunneler(OutputStream out)
Create a new OutputStreamFunneler for the specified OutputStream.
OutputStreamFunneler(OutputStream out, long timeoutMillis)
Create a new OutputStreamFunneler for the specified OutputStream, with the specified timeout value.

Method Summary

OutputStream
getFunnelInstance()
Get a "funnel" OutputStream instance to write to this OutputStreamFunneler's underlying OutputStream.
void
setTimeout(long timeoutMillis)
Set the timeout for this OutputStreamFunneler.

Field Details

DEFAULT_TIMEOUT_MILLIS

public static final long DEFAULT_TIMEOUT_MILLIS
Default timeout.
Field Value:
1000L

Constructor Details

OutputStreamFunneler

public OutputStreamFunneler(OutputStream out)
Create a new OutputStreamFunneler for the specified OutputStream.
Parameters:
out - OutputStream.

OutputStreamFunneler

public OutputStreamFunneler(OutputStream out,
                            long timeoutMillis)
Create a new OutputStreamFunneler for the specified OutputStream, with the specified timeout value.
Parameters:
out - OutputStream.
timeoutMillis - long.

Method Details

getFunnelInstance

public OutputStream getFunnelInstance()
            throws IOException
Get a "funnel" OutputStream instance to write to this OutputStreamFunneler's underlying OutputStream.
Returns:
OutputStream.

setTimeout

public void setTimeout(long timeoutMillis)
Set the timeout for this OutputStreamFunneler. This is the maximum time that may elapse between the closure of the last "funnel" and the next call to getOutputStream() without closing the underlying stream.
Parameters:
timeoutMillis - long timeout value.

Copyright B) 2000-2006 Apache Software Foundation. All Rights Reserved.