Package org.oddjob.events
Class ListSource<T>
- All Implemented Interfaces:
Serializable,Runnable,ArooaContextAware,ArooaSessionAware,Outbound<CompositeEvent<T>>,PropertyChangeNotifier,Iconic,LogEnabled,Resettable,Stateful,Stoppable,Structural
public class ListSource<T>
extends EventServiceBase<CompositeEvent<T>>
implements Serializable, Structural
- Author:
- Rob Gordon
- See Also:
Description
An event source that aggregates a list of child event sources. The events are aggregated according to the providedEventOperator which defaults to
AllEvents.Example
Trigger on a list of state expressions.
<oddjob>
<job>
<sequential>
<jobs>
<events:when id="when" xmlns:events="oddjob:events">
<jobs>
<events:list>
<of>
<events:watch name="Is Job 1 Complete">
<eventSource>
<state:watch xmlns:state="http://rgordon.co.uk/oddjob/state">
job1 is COMPLETE
</state:watch>
</eventSource>
</events:watch>
<events:watch name="Is Job 2 Complete">
<eventSource>
<state:watch xmlns:state="http://rgordon.co.uk/oddjob/state">
job2 is COMPLETE
</state:watch>
</eventSource>
</events:watch>
</of>
</events:list>
<echo id="job3" name="Job 3">
It's Done on ${when.trigger}
</echo>
</jobs>
</events:when>
<folder>
<jobs>
<echo id="job1" name="Job 1">
Hello
</echo>
<echo id="job2" name="Job 2">
World
</echo>
</jobs>
</folder>
</jobs>
</sequential>
</job>
</oddjob>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ChildHelper<Object> Track changes to children an notify listeners. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddStructuralListener(StructuralListener listener) Add a listener.protected RestoredoStart(Consumer<? super CompositeEvent<T>> consumer) getLast()protected voidAllow sub classes to do something on a hard reset.protected voidAllow subclasses to do something on a soft reset.voidremoveStructuralListener(StructuralListener listener) Remove a listener.voidsetEventOperator(EventOperator<T> eventOperator) voidMethods inherited from class org.oddjob.events.EventServiceBase
fireDestroyedState, getStateChanger, hardReset, iconHelper, onReset, run, setStateException, setTo, softReset, stateHandler, stopMethods inherited from class org.oddjob.framework.extend.BasePrimary
configure, getName, logger, logger, loggerName, save, setName, toStringMethods inherited from class org.oddjob.framework.extend.BaseComponent
addIconListener, addPropertyChangeListener, addStateListener, configure, destroy, firePropertyChange, getArooaSession, iconForId, initialise, lastStateEvent, onConfigured, onDestroy, onInitialised, removeIconListener, removePropertyChangeListener, removeStateListener, save, setArooaContext, setArooaSessionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.oddjob.Stateful
addStateListener, lastStateEvent, removeStateListener
-
Field Details
-
childHelper
Track changes to children an notify listeners.
-
-
Constructor Details
-
ListSource
public ListSource()Constructor.
-
-
Method Details
-
doStart
- Specified by:
doStartin classEventServiceBase<CompositeEvent<T>>
-
addStructuralListener
Add a listener. The listener will immediately receive add notifications for all existing children.- Specified by:
addStructuralListenerin interfaceStructural- Parameters:
listener- The listener.
-
removeStructuralListener
Remove a listener.- Specified by:
removeStructuralListenerin interfaceStructural- Parameters:
listener- The listener.
-
onSoftReset
protected void onSoftReset()Description copied from class:EventServiceBaseAllow subclasses to do something on a soft reset. Defaults toEventServiceBase.onReset()- Overrides:
onSoftResetin classEventServiceBase<CompositeEvent<T>>
-
onHardReset
protected void onHardReset()Description copied from class:EventServiceBaseAllow sub classes to do something on a hard reset. Defaults toEventServiceBase.onReset()- Overrides:
onHardResetin classEventServiceBase<CompositeEvent<T>>
-
setOf
- Reference Property:
- of
- Required:
- No, but pointless without.
Description
The event sources to combine. -
getEventOperator
-
setEventOperator
-
getLast
-