Github user ahgittin commented on a diff in the pull request:
https://github.com/apache/brooklyn-server/pull/816#discussion_r141621308
--- Diff:
core/src/main/java/org/apache/brooklyn/util/core/task/BasicExecutionManager.java
---
@@ -706,19 +719,23 @@ public void run() {
} else {
future = runner.submit(job);
}
+ afterSubmitRecordFuture(task, future);
+
+ return task;
+ }
+
+ protected <T> void afterSubmitRecordFuture(final Task<T> task,
Future<T> future) {
--- End diff --
yeah - the irritation is the matrix combination of phases (before-submit,
before-start, and after-end) x (schedule, atomic, same-thread). but at least
it's more explicit now and sharing code wherever possible, we can more easily
reason about how it could be improved.
---