org.apache.pig.newplan.logical.relational
Class LOCogroup

java.lang.Object
  extended by org.apache.pig.newplan.Operator
      extended by org.apache.pig.newplan.logical.relational.LogicalRelationalOperator
          extended by org.apache.pig.newplan.logical.relational.LOCogroup

public class LOCogroup
extends LogicalRelationalOperator


Nested Class Summary
static class LOCogroup.GROUPTYPE
          Enum for the type of group
 
Field Summary
static Integer OPTION_GROUPTYPE
          static constant to refer to the option of selecting a group type
 
Fields inherited from class org.apache.pig.newplan.logical.relational.LogicalRelationalOperator
alias, lineNum, mCustomPartitioner, mPinnedOptions, requestedParallelism, schema
 
Fields inherited from class org.apache.pig.newplan.Operator
annotations, hashPrime, location, name, plan
 
Constructor Summary
LOCogroup(LogicalPlan plan)
          Constructor for use in defining rule patterns
LOCogroup(OperatorPlan plan, MultiMap<Integer,LogicalExpressionPlan> expressionPlans, boolean[] isInner)
           
LOCogroup(OperatorPlan plan, MultiMap<Integer,LogicalExpressionPlan> expressionPlans, LOCogroup.GROUPTYPE groupType, boolean[] isInner)
           
 
Method Summary
 void accept(PlanVisitor v)
          Accept a visitor at this node in the graph.
 MultiMap<Integer,LogicalExpressionPlan> getExpressionPlans()
           
 Map<Integer,Long> getGeneratedInputUids()
          Returns an Unmodifiable Map of Input Number to Uid
 LOCogroup.GROUPTYPE getGroupType()
           
 boolean[] getInner()
           
 List<Operator> getInputs(LogicalPlan plan)
           
 LogicalSchema getSchema()
          Get the schema for the output of this relational operator.
 boolean isEqual(Operator other)
          This is like a shallow equals comparison.
 void resetGroupType()
           
 void resetUid()
          Erase all cached uid, regenerate uid when we regenerating schema.
 void setExpressionPlans(MultiMap<Integer,LogicalExpressionPlan> plans)
           
 void setGroupType(LOCogroup.GROUPTYPE gt)
           
 void setInnerFlags(boolean[] flags)
           
 
Methods inherited from class org.apache.pig.newplan.logical.relational.LogicalRelationalOperator
checkEquality, fixDuplicateUids, getAlias, getCustomPartitioner, getLineNumber, getRequestedParallelism, isPinnedOption, neverUseForRealSetSchema, pinOption, resetSchema, setAlias, setCustomPartitioner, setRequestedParallelism, setSchema, toString
 
Methods inherited from class org.apache.pig.newplan.Operator
annotate, getAnnotation, getLocation, getName, getPlan, removeAnnotation, setLocation, setPlan
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

OPTION_GROUPTYPE

public static final Integer OPTION_GROUPTYPE
static constant to refer to the option of selecting a group type

Constructor Detail

LOCogroup

public LOCogroup(LogicalPlan plan)
Constructor for use in defining rule patterns

Parameters:
plan -

LOCogroup

public LOCogroup(OperatorPlan plan,
                 MultiMap<Integer,LogicalExpressionPlan> expressionPlans,
                 boolean[] isInner)

LOCogroup

public LOCogroup(OperatorPlan plan,
                 MultiMap<Integer,LogicalExpressionPlan> expressionPlans,
                 LOCogroup.GROUPTYPE groupType,
                 boolean[] isInner)
Method Detail

getSchema

public LogicalSchema getSchema()
                        throws FrontendException
Description copied from class: LogicalRelationalOperator
Get the schema for the output of this relational operator. This does not merely return the schema variable. If schema is not yet set, this will attempt to construct it. Therefore it is abstract since each operator will need to construct its schema differently.

Specified by:
getSchema in class LogicalRelationalOperator
Returns:
the schema
Throws:
FrontendException

accept

public void accept(PlanVisitor v)
            throws FrontendException
Description copied from class: Operator
Accept a visitor at this node in the graph.

Specified by:
accept in class Operator
Parameters:
v - Visitor to accept.
Throws:
FrontendException

isEqual

public boolean isEqual(Operator other)
                throws FrontendException
Description copied from class: Operator
This is like a shallow equals comparison. It returns true if two operators have equivalent properties even if they are different objects. Here properties mean equivalent plan and equivalent name.

Specified by:
isEqual in class Operator
Returns:
true if two object have equivalent properties, else false
Throws:
FrontendException

getGroupType

public LOCogroup.GROUPTYPE getGroupType()

resetGroupType

public void resetGroupType()

getGeneratedInputUids

public Map<Integer,Long> getGeneratedInputUids()
Returns an Unmodifiable Map of Input Number to Uid

Returns:
Unmodifiable Map

getExpressionPlans

public MultiMap<Integer,LogicalExpressionPlan> getExpressionPlans()

setExpressionPlans

public void setExpressionPlans(MultiMap<Integer,LogicalExpressionPlan> plans)

setGroupType

public void setGroupType(LOCogroup.GROUPTYPE gt)

setInnerFlags

public void setInnerFlags(boolean[] flags)

getInner

public boolean[] getInner()

resetUid

public void resetUid()
Description copied from class: LogicalRelationalOperator
Erase all cached uid, regenerate uid when we regenerating schema. This process currently only used in ImplicitSplitInsert, which will insert split and invalidate some uids in plan

Overrides:
resetUid in class LogicalRelationalOperator

getInputs

public List<Operator> getInputs(LogicalPlan plan)


Copyright © 2007-2012 The Apache Software Foundation