package com.alimama.mdrillImport;
import java.util.Map;
import backtype.storm.task.TopologyContext;
public abstract class DataParser implements Parser{
private boolean isSpout;
private Map conf;
private TopologyContext context;
public void init(boolean isSpout,Map conf, TopologyContext context){
this.isSpout=isSpout;
this.conf=conf;
this.context=context;
}
private static final long serialVersionUID = 1L;
public Object parse(Object raw)
throws InvalidEntryException {
return this.parseObject(raw);
}
public abstract String[] getGroupName();
public abstract String[] getSumName();
public abstract String getTableName();
public DataIter parseObject(Object line) throws InvalidEntryException {
return this.parseLine(line==null?null:(String)line);
}
public DataIter parseLine(String line) throws InvalidEntryException{
return null;
}
public static interface DataIter {
public boolean next();
public long getTs();
public Object[] getGroup();
public Number[] getSum();
}
public boolean isSpout() {
return isSpout;
}
public Map getConf() {
return conf;
}
public TopologyContext getContext() {
return context;
}
}