| java.lang.Object org.cougaar.lib.callback.UTILFilterCallbackAdapter org.cougaar.lib.callback.UTILInclusiveWorkflowCallback
UTILInclusiveWorkflowCallback | public class UTILInclusiveWorkflowCallback extends UTILFilterCallbackAdapter (Code) | | Filters for expansions with workflows, where the tasks
meet the test of isInteresting.
The reaction to a new workflow is simpler than
UTILSingleTaskWorkflowCallback. This is better
for threaded allocators, where we can't make assumptions
about how the tasks will be handled, like we can with
a one at a time model.
|
Method Summary | |
protected UnaryPredicate | getPredicate() Filters for expansions and then examines the tasks
within the workflow for any tasks that don't have
associated plan elements. | public void | reactToChangedFilter() Tells listener of new expansions
set logger.isDebugEnabled() to true if you want to see what gets
ignored by the callback. |
getPredicate | protected UnaryPredicate getPredicate()(Code) | | Filters for expansions and then examines the tasks
within the workflow for any tasks that don't have
associated plan elements. These are then tested
against the plugin-specific interestingTask test.
set logger.isDebugEnabled() to true if you want to see logger.info on every
handled expansion. I.e. which tasks have been
allocated and which failed to allocate.
(Previously handled expansions are ignored by the
predicate.)
annonymous UnaryPredicate inner class |
reactToChangedFilter | public void reactToChangedFilter()(Code) | | Tells listener of new expansions
set logger.isDebugEnabled() to true if you want to see what gets
ignored by the callback. (Changed and removed
expansions are ignored.)
Again, this can make you feel better,
since the interestingTask test
is made on these ignored expansions too.
(Since sometimes calls to interestingTask are
followed by the listener doing something, but in
these cases, nothing happens despite the
listener/plugin being "interested" in the task.)
|
|
|