I can see two ways of accomplishing this:
- Register start/end of job execution in
RunnableJob.run() method and provide a simple API for retrieving a list of jobs, that were started but hadn't yet finished
- Store JobFutures somewhere and provide an API for querying current (and possibly historical) data, that will be based on the list of active and completed futures