package main.java.utils;
import static main.java.utils.constants.WorkberchConstants.INDEX_FIELD;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import backtype.storm.tuple.Tuple;
public class WorkberchTuple implements Serializable {
private static final long serialVersionUID = -5931194268481553207L;
private final Map<String, Object> values = new HashMap<String, Object>();
private final List<String> fields = new ArrayList<String>();
private final String source;
public WorkberchTuple(final Tuple input) {
source = input.getSourceComponent();
final List<String> inputFields = input.getFields().toList();
for (final String inputField : inputFields) {
values.put(inputField, input.getValueByField(inputField));
}
fields.addAll(inputFields);
}
public Map<String, Object> getValues() {
return values;
}
public List<String> getFields() {
return fields;
}
public String getSource() {
return source;
}
public void setPlainIndex(final Long newIndex) {
values.put(INDEX_FIELD, newIndex);
}
}