// Creates QueueSpecification
Table<Node, String, Set<QueueSpecification>> queueSpecs = new SimpleQueueSpecificationGenerator().create(
flowSpec);
Flowlet flowlet = new InstantiatorFactory(false).get(TypeToken.of(flowletClass)).create();
TypeToken<? extends Flowlet> flowletType = TypeToken.of(flowletClass);
// Set the context classloader to the Tigon classloader. It is needed for the DatumWriterFactory be able
// to load Tigon classes
Thread.currentThread().setContextClassLoader(FlowletProgramRunner.class.getClassLoader());
// Inject DataSet, OutputEmitter, Metric fields
Reflections.visit(flowlet, TypeToken.of(flowlet.getClass()),
new PropertyFieldSetter(flowletDef.getFlowletSpec().getProperties()),
new MetricsFieldSetter(flowletContext.getMetrics()),
new OutputEmitterFieldSetter(outputEmitterFactory(flowletContext, flowletName,
dataFabricFacade, queueSpecs))
);