@Override public void cleanup() { bolt.cleanup(); }
@Override public void declareOutputFields(OutputFieldsDeclarer declarer) { bolt.declareOutputFields(declarer); }
/** * Hands off tuple to the wrapped bolt to execute. Sub-classes can * override the behavior. * <p> * Right now tuples continue to get forwarded while waiting for checkpoints to arrive on other streams * after checkpoint arrives on one of the streams. This can cause duplicates but still at least once. * </p> * * @param input the input tuple */ protected void handleTuple(Tuple input) { bolt.execute(input); }
@Override public void prepare(Map stormConf, TopologyContext context, OutputCollector collector) { init(context, collector); bolt.prepare(stormConf, context, this.collector); }
@Override public Map<String, Object> getComponentConfiguration() { return bolt.getComponentConfiguration(); }
public void prepare(Map stormConf, TopologyContext context, OutputCollector collector) { if (_delegate instanceof FinishedCallback) { _callback = (FinishedCallback) _delegate; } _delegate.prepare(stormConf, context, collector); _rrQueue = new KeyedRoundRobinQueue<>(); _executor = new Thread(new Runnable() { public void run() { try { while (true) { _delegate.execute(_rrQueue.take()); } } catch (InterruptedException ignored) { } } }); _executor.setDaemon(true); _executor.start(); }
@Override public Map<String, Object> getComponentConfiguration() { return _delegate.getComponentConfiguration(); }
public void declareOutputFields(OutputFieldsDeclarer declarer) { _delegate.declareOutputFields(declarer); }
public void prepare(Map stormConf, TopologyContext context, OutputCollector collector) { if(_delegate instanceof FinishedCallback) { _callback = (FinishedCallback) _delegate; } _delegate.prepare(stormConf, context, collector); _rrQueue = new KeyedRoundRobinQueue<Tuple>(); _executor = new Thread(new Runnable() { public void run() { try { while(true) { _delegate.execute(_rrQueue.take()); } } catch (InterruptedException e) { } } }); _executor.setDaemon(true); _executor.start(); }
public void run() { try { while (true) { _delegate.execute(_rrQueue.take()); } } catch (InterruptedException ignored) { } } });
@Override public void cleanup() { bolt.cleanup(); }
@Override public Map<String, Object> getComponentConfiguration() { return bolt.getComponentConfiguration(); }
public void declareOutputFields(OutputFieldsDeclarer declarer) { _richDelegate.declareOutputFields(declarer); }
public void prepare(Map config, TopologyContext context, OutputCollector collector) { TimeCacheMap.ExpiredCallback<Object, TrackingInfo> callback = null; if (_delegate instanceof TimeoutCallback) { callback = new TimeoutItems(); } _tracked = new TimeCacheMap<>(context.maxTopologyMessageTimeout(), callback); _collector = collector; _delegate.prepare(config, context, new OutputCollector(new CoordinatedOutputCollector(collector))); for (String component : Utils.get(context.getThisTargets(), Constants.COORDINATED_STREAM_ID, new HashMap<String, Grouping>()).keySet()) { for (Integer task : context.getComponentTasks(component)) { _countOutTasks.add(task); } } if (!_sourceArgs.isEmpty()) { _numSourceReports = 0; for (Entry<String, SourceArgs> entry : _sourceArgs.entrySet()) { if (entry.getValue().singleCount) { _numSourceReports += 1; } else { _numSourceReports += context.getComponentTasks(entry.getKey()).size(); } } } }
public void run() { try { while(true) { _delegate.execute(_rrQueue.take()); } } catch (InterruptedException e) { } } });
public void cleanup() { _delegate.cleanup(); }
@Override public Map<String, Object> getComponentConfiguration() { return _delegate.getComponentConfiguration(); }
public void declareOutputFields(OutputFieldsDeclarer declarer) { _delegate.declareOutputFields(declarer); }
public void prepare(Map config, TopologyContext context, OutputCollector collector) { TimeCacheMap.ExpiredCallback<Object, TrackingInfo> callback = null; if(_delegate instanceof TimeoutCallback) { callback = new TimeoutItems(); } _tracked = new TimeCacheMap<Object, TrackingInfo>(context.maxTopologyMessageTimeout(config), callback); _collector = collector; _delegate.prepare(config, context, new OutputCollector(new CoordinatedOutputCollector(collector))); for(String component: Utils.get(context.getThisTargets(), Constants.COORDINATED_STREAM_ID, new HashMap<String, Grouping>()) .keySet()) { for(Integer task: context.getComponentTasks(component)) { _countOutTasks.add(task); } } if(!_sourceArgs.isEmpty()) { _numSourceReports = 0; for(Entry<String, SourceArgs> entry: _sourceArgs.entrySet()) { if(entry.getValue().singleCount) { _numSourceReports+=1; } else { _numSourceReports+=context.getComponentTasks(entry.getKey()).size(); } } } }
} else { synchronized (_tracked) { _delegate.execute(tuple);