Olm Power Down Task
A task capable of running in parallel powering down OLM power.
The package also contains an Interface left open to be implemented
at a later time.
Pseudo code example usage:
ListenableFuture<OLMRenderingResult> futureAtoZ =
this.executor.submit(
new OlmPowerTurnDownTask(...)
);
ListenableFuture<OLMRenderingResult> futureZtoA =
this.executor.submit(
new OlmPowerTurnDownTask(...)
);
ListenableFuture<List<OLMRenderingResult>> futures =
Futures.allAsList(futureAtoZ, futureZtoA);
List<OLMRenderingResult> results;
try{
results = futures.get(Timeouts.OLM_TIMEOUT, TimeUnit.MILLISECONDS);
} catch (Exception e) {
LOG.error("Error while turning down power!");
}
if (results.get(0).isSuccess() && results.get(1).isSuccess()) {
LOG.info("OLM power successfully turned down");
}
JIRA: TRNSPRTPCE-616
Change-Id: I6839ad8bdd5feeec5bcd63700efe55c8aed01085
Signed-off-by: Joakim Törnqvist <joakim.tornqvist@smartoptics.com>