package org.apache.solr.request.compare;
import java.util.ArrayList;
import com.alimama.mdrill.distinct.DistinctCount.DistinctCountAutoAjuest;
public class GroupbyAgent implements GroupbyItem{
private final GroupbyItem groupby;
public GroupbyAgent(ArrayList<Object> nst)
{
Integer rc=(Integer) nst.get(1);
switch(rc)
{
case 0:
{
groupby=new RecordCount(nst);
break;
}
case 1:
{
groupby=new GroupbyRow(nst);
break;
}
case 2:
{
groupby=new SelectDetailRow(nst);
break;
}
case 3:
{
groupby=new RecordCountDetail(nst);
break;
}
default:{
groupby=new RecordCount(nst);
}
}
}
public GroupbyItem getRaw()
{
return this.groupby;
}
public void shardsMerge(GroupbyItem o)
{
GroupbyItem mg=o;
if(o instanceof GroupbyAgent)
{
mg=((GroupbyAgent) o).groupby;
}
groupby.shardsMerge(mg);
}
public boolean isrecordcount(){
return groupby.isrecordcount();
}
@Override
public void setCross(String[] crossFs, String[] distFS) {
groupby.setCross(crossFs, distFS);
}
@Override
public ArrayList<Object> toNamedList() {
return groupby.toNamedList();
}
}