org.apache.tools.ant.util

Class Watchdog

Implemented Interfaces:
Runnable

public class Watchdog
extends java.lang.Object
implements Runnable

Generalization of ExecuteWatchdog
Since:
Ant 1.5
See Also:
ExecuteWatchdog

Field Summary

static String
ERROR_INVALID_TIMEOUT
Error string.

Constructor Summary

Watchdog(long timeout)
Constructor for Watchdog.

Method Summary

void
addTimeoutObserver(TimeoutObserver to)
Add a timeout observer.
protected void
fireTimeoutOccured()
Inform the observers that a timeout has occurred.
void
removeTimeoutObserver(TimeoutObserver to)
Remove a timeout observer.
void
run()
The run method of the watch dog thread.
void
start()
Start the watch dog.
void
stop()
Stop the watch dog.

Field Details

ERROR_INVALID_TIMEOUT

public static final String ERROR_INVALID_TIMEOUT
Error string.

Constructor Details

Watchdog

public Watchdog(long timeout)
Constructor for Watchdog.
Parameters:
timeout - the timeout to use in milliseconds (must be >= 1).

Method Details

addTimeoutObserver

public void addTimeoutObserver(TimeoutObserver to)
Add a timeout observer.
Parameters:
to - the timeout observer to add.

fireTimeoutOccured

protected final void fireTimeoutOccured()
Inform the observers that a timeout has occurred. This happens in the watchdog thread.

removeTimeoutObserver

public void removeTimeoutObserver(TimeoutObserver to)
Remove a timeout observer.
Parameters:
to - the timeout observer to remove.

run

public void run()
The run method of the watch dog thread. This simply does a wait for the timeout time, and if the stop flag has not been set when the wait has returned or has been interrupted, the watch dog listeners are informed.

start

public void start()
Start the watch dog.

stop

public void stop()
Stop the watch dog.