package org.apache.pig.backend.stratosphere.executionengine.pactLayer.relationalOperators;
import java.util.Iterator;
import java.util.List;
import org.apache.pig.backend.executionengine.ExecException;
import org.apache.pig.backend.stratosphere.executionengine.pactLayer.PactOperator;
import org.apache.pig.backend.stratosphere.executionengine.pactLayer.Result;
import org.apache.pig.backend.stratosphere.executionengine.pactLayer.SOStatus;
import org.apache.pig.backend.stratosphere.executionengine.pactLayer.plans.PactPlanVisitor;
import org.apache.pig.data.BagFactory;
import org.apache.pig.data.DataBag;
import org.apache.pig.data.DataType;
import org.apache.pig.data.Tuple;
import org.apache.pig.data.TupleFactory;
import org.apache.pig.impl.plan.OperatorKey;
import org.apache.pig.impl.plan.VisitorException;
import org.apache.pig.pen.Illustrator;
public class SOCoGroup extends PactOperator {
private static final long serialVersionUID = 1L;
protected DataBag[] inputBags;
protected Tuple[] data;
protected transient Iterator<Tuple>[] its;
protected Tuple tupleOfLastBag;
public SOCoGroup(OperatorKey k) {
super(k);
}
public SOCoGroup(OperatorKey k, int rp) {
this(k, rp, null);
}
public SOCoGroup(OperatorKey k, List<PactOperator> inputs) {
this(k, -1, inputs);
}
public SOCoGroup(OperatorKey k, int rp, List<PactOperator> inputs) {
super(k, rp, inputs);
}
@Override
public void visit(PactPlanVisitor v) throws VisitorException {
v.visitCoGroup(this);
}
@Override
public String name() {
return getAliasString() + "SOCoGroup" + "["
+ DataType.findTypeName(resultType) + "]" + " - "
+ mKey.toString();
}
@Override
public void setIllustrator(Illustrator illustrator) {
}
@Override
public boolean supportsMultipleInputs() {
return true;
}
@Override
public boolean supportsMultipleOutputs() {
return false;
}
@Override
public Tuple illustratorMarkup(Object in, Object out, int eqClassIndex) {
return null;
}
}