public static Fields fieldsConcat(Fields... fields) { List<String> ret = new ArrayList<String>(); for(Fields f: fields) { if(f!=null) ret.addAll(f.toList()); } return new Fields(ret); }
public void declareStream(String streamId, boolean direct, Fields fields) { if (_fields.containsKey(streamId)) { throw new IllegalArgumentException("Fields for " + streamId + " already set"); } _fields.put(streamId, new StreamInfo(fields.toList(), direct)); }
public static Fields fieldsUnion(Fields... fields) { Set<String> ret = new HashSet<String>(); for(Fields f: fields) { if(f!=null) ret.addAll(f.toList()); } return new Fields(new ArrayList<String>(ret)); }
public void declareStream(String streamId, boolean direct, Fields fields) { if (_fields.containsKey(streamId)) { throw new IllegalArgumentException("Fields for " + streamId + " already set"); } List<String> fieldList = new ArrayList<>(); fieldList.add(TransactionCommon.BATCH_GROUP_ID_FIELD); fieldList.addAll(fields.toList()); _fields.put(streamId, new StreamInfo(fieldList, direct)); }
public void declareStream(String streamId, boolean direct, Fields fields) { if(_fields.containsKey(streamId)) { throw new IllegalArgumentException("Fields for " + streamId + " already set"); } _fields.put(streamId, new StreamInfo(fields.toList(), direct)); }
private PersistentArrayMap toMap() { Object array[] = new Object[values.size() * 2]; List<String> fields = getFields().toList(); for (int i = 0; i < values.size(); i++) { array[i * 2] = fields.get(i); array[(i * 2) + 1] = values.get(i); } return new PersistentArrayMap(array); }
@Override public void declareOutputFields(OutputFieldsDeclarer declarer) { List<String> toDeclare = new ArrayList<String>(_outFields.toList()); toDeclare.add(0, TX_FIELD); declarer.declare(new Fields(toDeclare)); }
@Override public void declareOutputFields(OutputFieldsDeclarer declarer) { List<String> toDeclare = new ArrayList<>(_outFields.toList()); toDeclare.add(0, TX_FIELD); declarer.declare(new Fields(toDeclare)); }
/** * Gets the declared output fields for the specified stream id for the component this task is a part of. */ public Map<String, List<String>> getThisOutputFieldsForStreams() { Map<String, List<String>> streamToFields = new HashMap<>(); for (String stream : this.getThisStreams()) { streamToFields.put(stream, this.getThisOutputFields(stream).toList()); } return streamToFields; }
public ISeq seq() { if (values.size() > 0) { return new Seq(getFields().toList(), values, 0); } return null; }
private PersistentArrayMap toMap() { Object array[] = new Object[values.size()*2]; List<String> fields = getFields().toList(); for(int i=0; i < values.size(); i++) { array[i*2] = fields.get(i); array[(i*2)+1] = values.get(i); } return new PersistentArrayMap(array); }
@Override public void declareOutputFields(OutputFieldsDeclarer declarer) { List<String> fields = new ArrayList<>(_spout.getOutputFields().toList()); fields.add(0, ID_FIELD); declarer.declareStream(_streamName, new Fields(fields)); }
@Override public void declareOutputFields(OutputFieldsDeclarer declarer) { List<String> toDeclare = new ArrayList<String>(_outFields.toList()); toDeclare.add(0, TX_FIELD); declarer.declare(new Fields(toDeclare)); }
public MkFieldsGrouper(Fields _out_fields, Fields _group_fields, List<Integer> _out_tasks) { for (Iterator<String> it = _group_fields.iterator(); it.hasNext(); ) { String groupField = it.next(); // if groupField isn't in _out_fields, it would throw Exception _out_fields.fieldIndex(groupField); } this.outFields = _out_fields; this.groupFields = _group_fields; this.groupFieldIndex = new ArrayList<>(); for (String fieldStr : groupFields.toList()) { groupFieldIndex.add(outFields.fieldIndex(fieldStr)); } this.outTasks = _out_tasks; }
public ISeq seq() { if(values.size() > 0) { return new Seq(getFields().toList(), values, 0); } return null; }
public BoltDeclarer fieldsGrouping(String componentId, String streamId, Fields fields) { return grouping(componentId, streamId, Grouping.fields(fields.toList())); }
public InitialReceiver(String stream, Fields allFields) { // TODO: don't want to project for non-batch bolts...??? // how to distinguish "batch" streams from non-batch streams? _stream = stream; _factory = new RootFactory(allFields); List<String> projected = new ArrayList(allFields.toList()); projected.remove(0); _project = new ProjectionFactory(_factory, new Fields(projected)); }
public BoltDeclarer fieldsGrouping(String componentId, String streamId, Fields fields) { return grouping(componentId, streamId, Grouping.fields(fields.toList())); }
/** * ## Repartitioning Operation * * @param fields * @return */ public Stream partitionBy(Fields fields) { projectionValidation(fields); return partition(Grouping.fields(fields.toList())); }