public static Fields getSingleOutputStreamFields(IComponent component) { OutputFieldsGetter getter = new OutputFieldsGetter(); component.declareOutputFields(getter); Map<String, StreamInfo> declaration = getter.getFieldsDeclaration(); if(declaration.size()!=1) { throw new RuntimeException("Trident only supports components that emit a single stream"); } StreamInfo si = declaration.values().iterator().next(); if(si.is_direct()) { throw new RuntimeException("Trident does not support direct streams"); } return new Fields(si.get_output_fields()); }
public void declare(Fields fields) { declare(false, fields); }
private ComponentCommon getComponentCommon(String id, IComponent component) { ComponentCommon ret = new ComponentCommon(_commons.get(id)); OutputFieldsGetter getter = new OutputFieldsGetter(); component.declareOutputFields(getter); // declare watermark stream for all components getter.declareStream(Common.WATERMARK_STREAM_ID, new Fields("watermark")); ret.set_streams(getter.getFieldsDeclaration()); return ret; }
public void declare(boolean direct, Fields fields) { declareStream(Utils.DEFAULT_STREAM_ID, direct, fields); }
@Override public void declareOutputFields(com.twitter.heron.api.topology.OutputFieldsDeclarer declarer) { OutputFieldsGetter getter = new OutputFieldsGetter(declarer); delegate.declareOutputFields(getter); }
@Override public void declareOutputFields(OutputFieldsDeclarer declarer) { boltExecutor.declareOutputFields(declarer); Map<String, StreamInfo> streams = ((OutputFieldsGetter) declarer).getFieldsDeclaration(); if (streams.size() > 0) { declarer.declareStream(TransactionCommon.BARRIER_STREAM_ID, new Fields(TransactionCommon.BARRIER_SNAPSHOT_FIELD)); } else { isEndBolt = true; } }
public void declareStream(String streamId, Fields fields) { declareStream(streamId, false, fields); }
@Override public void declareOutputFields(com.twitter.heron.api.topology.OutputFieldsDeclarer declarer) { OutputFieldsGetter getter = new OutputFieldsGetter(declarer); delegate.declareOutputFields(getter); }
private ComponentCommon getComponentCommon(String id, IComponent component) { ComponentCommon ret = new ComponentCommon(_commons.get(id)); OutputFieldsGetter getter = new OutputFieldsGetter(); component.declareOutputFields(getter); ret.set_streams(getter.getFieldsDeclaration()); return ret; }
public void declareStream(String streamId, Fields fields) { declareStream(streamId, false, fields); }
public void declare(Fields fields) { declare(false, fields); }
OutputFieldsGetter getter = new OutputFieldsGetter(); lastBolt.declareOutputFields(getter); Map<String, StreamInfo> streams = getter.getFieldsDeclaration(); if (streams.size() != 1) { throw new RuntimeException("Must declare exactly one stream from last bolt in LinearDRPCTopology");
public void declare(boolean direct, Fields fields) { declareStream(Utils.DEFAULT_STREAM_ID, direct, fields); }
public void declare(Fields fields) { declare(false, fields); }
OutputFieldsGetter getter = new OutputFieldsGetter(); lastBolt.declareOutputFields(getter); Map<String, StreamInfo> streams = getter.getFieldsDeclaration(); if(streams.size()!=1) { throw new RuntimeException("Must declare exactly one stream from last bolt in LinearDRPCTopology");
public void declare(boolean direct, Fields fields) { declareStream(Utils.DEFAULT_STREAM_ID, direct, fields); }
public void declare(Fields fields) { declare(false, fields); }
private ComponentCommon getComponentCommon(String id, IComponent component) { ComponentCommon ret = new ComponentCommon(_commons.get(id)); OutputFieldsGetter getter = new OutputFieldsGetter(); component.declareOutputFields(getter); ret.set_streams(getter.getFieldsDeclaration()); return ret; }
public void declareStream(String streamId, Fields fields) { declareStream(streamId, false, fields); }
public void declare(Fields fields) { declare(false, fields); }