From 84fb119932bd6a47359aae8df4a553d915c7a686 Mon Sep 17 00:00:00 2001 From: Simon Ebner Date: Tue, 29 Apr 2014 11:26:22 +0200 Subject: [PATCH] cleaned up cleanup procedure --- .../java/ch/psi/fda/rest/ExecutionJob.java | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/ch.psi.fda/src/main/java/ch/psi/fda/rest/ExecutionJob.java b/ch.psi.fda/src/main/java/ch/psi/fda/rest/ExecutionJob.java index b747743..d7e5ccf 100644 --- a/ch.psi.fda/src/main/java/ch/psi/fda/rest/ExecutionJob.java +++ b/ch.psi.fda/src/main/java/ch/psi/fda/rest/ExecutionJob.java @@ -45,6 +45,8 @@ public class ExecutionJob implements Runnable { private final String trackingId; private final EDescriptor edescriptor; + private EventBus ebus; + public ExecutionJob(ChannelService cService, ZMQDataService zmqService, String trackingId, EDescriptor edescriptor) { this.zmqService = zmqService; this.cService = cService; @@ -60,13 +62,15 @@ public class ExecutionJob implements Runnable { logger.info("Execute ----" + trackingId); - EventBus ebus = new EventBus(); + ebus = new EventBus(); + + // Configure ZMQ streaming service and attach it to event bus zmqService.setTrackingId(trackingId); + // TODO e.g. set some filters on what is streamed + // TODO stream a metadata message on what is streamed via the zmq service ebus.register(zmqService); - // Post visualization configuration -// ebus.post(edescriptor.getVisualization()); - + Injector injector = Guice.createInjector(new InjectionModule(cService)); ServiceLoader factories = ServiceLoader.load(EContainerFactory.class); @@ -78,15 +82,13 @@ public class ExecutionJob implements Runnable { } } - econtainer.initialize(); - econtainer.execute(); - econtainer.destroy(); + econtainer.initialize(); + econtainer.execute(); - logger.info("" + trackingId + " done"); + logger.info("Done ----" + trackingId); - // Cleanup - ebus.unregister(zmqService); } finally { + ebus.unregister(zmqService); if(econtainer!=null){ econtainer.destroy(); }