Package org.zeroturnaround.exec.listener
Class CompositeProcessListener
- java.lang.Object
-
- org.zeroturnaround.exec.listener.ProcessListener
-
- org.zeroturnaround.exec.listener.CompositeProcessListener
-
- All Implemented Interfaces:
java.lang.Cloneable
public class CompositeProcessListener extends ProcessListener implements java.lang.Cloneable
Composite process event handler.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<ProcessListener>children
-
Constructor Summary
Constructors Constructor Description CompositeProcessListener()CompositeProcessListener(java.util.List<ProcessListener> children)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(ProcessListener listener)Add new listener.voidafterFinish(java.lang.Process process, ProcessResult result)Invoked after a process has finished successfully.voidafterStart(java.lang.Process process, ProcessExecutor executor)Invoked after a process has started.voidafterStop(java.lang.Process process)Invoked after a process has exited (whether finished or cancelled).voidbeforeStart(ProcessExecutor executor)Invoked before a process is started.voidclear()Remove all existing listeners.CompositeProcessListenerclone()voidremove(ProcessListener listener)Remove existing listener.voidremoveAll(java.lang.Class<? extends ProcessListener> type)Remove existing listeners of given type or its sub-types.
-
-
-
Field Detail
-
children
private final java.util.List<ProcessListener> children
-
-
Constructor Detail
-
CompositeProcessListener
public CompositeProcessListener()
-
CompositeProcessListener
public CompositeProcessListener(java.util.List<ProcessListener> children)
-
-
Method Detail
-
add
public void add(ProcessListener listener)
Add new listener.- Parameters:
listener- listener to be added.
-
remove
public void remove(ProcessListener listener)
Remove existing listener.- Parameters:
listener- listener to be removed.
-
removeAll
public void removeAll(java.lang.Class<? extends ProcessListener> type)
Remove existing listeners of given type or its sub-types.- Parameters:
type- listener type.
-
clear
public void clear()
Remove all existing listeners.
-
clone
public CompositeProcessListener clone()
- Overrides:
clonein classjava.lang.Object
-
beforeStart
public void beforeStart(ProcessExecutor executor)
Description copied from class:ProcessListenerInvoked before a process is started.- Overrides:
beforeStartin classProcessListener- Parameters:
executor- executor used for starting a process. Any changes made here apply to the starting process. Once the process has started it is not affected by theProcessExecutorany more.
-
afterStart
public void afterStart(java.lang.Process process, ProcessExecutor executor)Description copied from class:ProcessListenerInvoked after a process has started.- Overrides:
afterStartin classProcessListener- Parameters:
process- the process started.executor- executor used for starting the process. Modifying theProcessExecutoronly affects the following processes not the one just started.
-
afterFinish
public void afterFinish(java.lang.Process process, ProcessResult result)Description copied from class:ProcessListenerInvoked after a process has finished successfully.- Overrides:
afterFinishin classProcessListener- Parameters:
process- process just finished.result- result of the finished process.
-
afterStop
public void afterStop(java.lang.Process process)
Description copied from class:ProcessListenerInvoked after a process has exited (whether finished or cancelled).- Overrides:
afterStopin classProcessListener- Parameters:
process- process just stopped.
-
-