|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.pig.impl.plan.Operator<LOVisitor>
org.apache.pig.impl.logicalLayer.LogicalOperator
org.apache.pig.impl.logicalLayer.RelationalOperator
org.apache.pig.impl.logicalLayer.LOForEach
public class LOForEach
Field Summary |
---|
Fields inherited from class org.apache.pig.impl.logicalLayer.LogicalOperator |
---|
mAlias, mIsProjectionMapComputed, mIsSchemaComputed, mPlan, mProjectionMap, mRequestedParallelism, mSchema, mType |
Fields inherited from class org.apache.pig.impl.plan.Operator |
---|
mKey |
Constructor Summary | |
---|---|
LOForEach(LogicalPlan plan,
OperatorKey k,
ArrayList<LogicalPlan> foreachPlans,
ArrayList<Boolean> flattenList)
|
|
LOForEach(LogicalPlan plan,
OperatorKey k,
ArrayList<LogicalPlan> foreachPlans,
ArrayList<Boolean> flattenList,
ArrayList<Schema> userDefinedSchemaList)
|
Method Summary | |
---|---|
protected Object |
clone()
|
List<Boolean> |
getFlatten()
|
ArrayList<LogicalPlan> |
getForEachPlans()
|
ProjectionMap |
getProjectionMap()
Produce a map describing how this operator modifies its projection. |
List<RequiredFields> |
getRelevantInputs(int output,
int column)
Get relevant input columns of a particular output column. |
List<RequiredFields> |
getRequiredFields()
Get a list of fields that this operator requires. |
Schema |
getSchema()
Get a copy of the schema for the output of this operator. |
byte |
getType()
Get the type of this operator. |
List<Schema> |
getUserDefinedSchema()
|
Pair<Boolean,List<Integer>> |
hasFlatten()
A helper method to check if the foreach has a flattened element |
String |
name()
|
void |
rewire(Operator oldPred,
int oldPredIndex,
Operator newPred,
boolean useOldPred)
Make any necessary changes to a node based on a change of position in the plan. |
void |
setFlatten(ArrayList<Boolean> flattenList)
|
void |
setForEachPlans(ArrayList<LogicalPlan> foreachPlans)
|
void |
setUserDefinedSchema(ArrayList<Schema> userDefinedSchema)
|
boolean |
supportsMultipleInputs()
Indicates whether this operator supports multiple inputs. |
void |
unsetSchema()
Unset the schema as if it had not been calculated. |
void |
visit(LOVisitor v)
Visit this node with the provided visitor. |
Methods inherited from class org.apache.pig.impl.logicalLayer.RelationalOperator |
---|
regenerateProjectionMap, unsetProjectionMap |
Methods inherited from class org.apache.pig.impl.logicalLayer.LogicalOperator |
---|
forceSchema, getAlias, getOperatorKey, getPlan, getRequestedParallelism, reconcileSchema, regenerateSchema, setAlias, setCanonicalNames, setPlan, setRequestedParallelism, setSchema, setSchemaComputed, setType, supportsMultipleOutputs, toString |
Methods inherited from class org.apache.pig.impl.plan.Operator |
---|
compareTo, equals, hashCode |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public LOForEach(LogicalPlan plan, OperatorKey k, ArrayList<LogicalPlan> foreachPlans, ArrayList<Boolean> flattenList)
plan
- Logical plan this operator is a part of.k
- Operator key to assign to this node.foreachPlans
- the list of plans that are applied for each inputflattenList
- boolean list that tells which elements of the foreach
projection should be flattened.public LOForEach(LogicalPlan plan, OperatorKey k, ArrayList<LogicalPlan> foreachPlans, ArrayList<Boolean> flattenList, ArrayList<Schema> userDefinedSchemaList)
Method Detail |
---|
public ArrayList<LogicalPlan> getForEachPlans()
public void setForEachPlans(ArrayList<LogicalPlan> foreachPlans)
public List<Boolean> getFlatten()
public void setFlatten(ArrayList<Boolean> flattenList)
public List<Schema> getUserDefinedSchema()
public void setUserDefinedSchema(ArrayList<Schema> userDefinedSchema)
public String name()
name
in class Operator<LOVisitor>
public boolean supportsMultipleInputs()
Operator
supportsMultipleInputs
in class Operator<LOVisitor>
public void visit(LOVisitor v) throws VisitorException
LogicalOperator
visit
in class LogicalOperator
v
- Visitor to visit with.
VisitorException
- if the visitor has a problem.public byte getType()
LogicalOperator
getType
in class LogicalOperator
public Schema getSchema() throws FrontendException
LogicalOperator
getSchema
in class LogicalOperator
FrontendException
public void unsetSchema() throws VisitorException
LogicalOperator
unsetSchema
in class LogicalOperator
VisitorException
protected Object clone() throws CloneNotSupportedException
clone
in class LogicalOperator
CloneNotSupportedException
Do not use the clone method directly. Operators are cloned when logical plans
are cloned using {@link LogicalPlanCloner}
public ProjectionMap getProjectionMap()
RelationalOperator
getProjectionMap
in class RelationalOperator
public List<RequiredFields> getRequiredFields()
RelationalOperator
getRequiredFields
in class RelationalOperator
public void rewire(Operator oldPred, int oldPredIndex, Operator newPred, boolean useOldPred) throws PlanException
Operator
rewire
in class Operator<LOVisitor>
oldPred
- Operator that was previously the predecessor.oldPredIndex
- position of the old predecessor in the list of predecessorsnewPred
- Operator that will now be the predecessor.useOldPred
- If true use oldPred's projection map for the rewire; otherwise
use newPred's projection map
PlanException
public Pair<Boolean,List<Integer>> hasFlatten()
public List<RequiredFields> getRelevantInputs(int output, int column)
RelationalOperator
getRelevantInputs
in class RelationalOperator
output
- output index. Only LOSplit have output other than 0 currentlycolumn
- output column
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |