Multimap<String, QueueName> flowletQueues = FlowUtils.configureQueue(program, flowSpec, streamAdmin, queueAdmin);
// Launch flowlet program runners
LOG.info("Launching distributed flow: " + program.getName() + ":" + flowSpec.getName());
TwillController controller = launcher.launch(new FlowTwillApplication(program, flowSpec,
hConfFile, cConfFile, eventHandler));
DistributedFlowletInstanceUpdater instanceUpdater = new DistributedFlowletInstanceUpdater(program, controller,
queueAdmin, streamAdmin,
flowletQueues);
return new FlowTwillProgramController(program.getName(), controller, instanceUpdater).startListen();