org.apache.pig.impl.logicalLayer
Class LOFRJoin

java.lang.Object
  extended by org.apache.pig.impl.plan.Operator<LOVisitor>
      extended by org.apache.pig.impl.logicalLayer.LogicalOperator
          extended by org.apache.pig.impl.logicalLayer.LOFRJoin
All Implemented Interfaces:
Serializable, Cloneable, Comparable<Operator>

public class LOFRJoin
extends LogicalOperator

This is the logical operator for the Fragment Replicate Join It holds the user specified information and is responsible for the schema computation. This mimics the LOCogroup operator except the schema computation.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.pig.impl.logicalLayer.LogicalOperator
mAlias, mIsSchemaComputed, mPlan, mRequestedParallelism, mSchema, mType
 
Fields inherited from class org.apache.pig.impl.plan.Operator
mKey
 
Constructor Summary
LOFRJoin(LogicalPlan plan, OperatorKey k, MultiMap<LogicalOperator,LogicalPlan> joinColPlans, boolean[] isInner, LogicalOperator fragOp)
           
 
Method Summary
 byte getAtomicJoinColType()
           
 LogicalOperator getFragOp()
           
 List<LogicalOperator> getInputs()
           
 MultiMap<LogicalOperator,LogicalPlan> getJoinColPlans()
           
 Schema getSchema()
          Get a copy of the schema for the output of this operator.
 Schema getTupleJoinColSchema()
           
 boolean isTupleJoinCol()
           
 String name()
           
 void setFragOp(LogicalOperator fragOp)
           
 boolean supportsMultipleInputs()
          Indicates whether this operator supports multiple inputs.
 void switchJoinColPlanOp(LogicalOperator oldOp, LogicalOperator newOp)
           
 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.LogicalOperator
clone, forceSchema, getAlias, getOperatorKey, getPlan, getRequestedParallelism, getType, 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

LOFRJoin

public LOFRJoin(LogicalPlan plan,
                OperatorKey k,
                MultiMap<LogicalOperator,LogicalPlan> joinColPlans,
                boolean[] isInner,
                LogicalOperator fragOp)
Method Detail

getSchema

public Schema getSchema()
                 throws FrontendException
Description copied from class: LogicalOperator
Get a copy of the schema for the output of this operator.

Specified by:
getSchema in class LogicalOperator
Throws:
FrontendException

getJoinColPlans

public MultiMap<LogicalOperator,LogicalPlan> getJoinColPlans()

switchJoinColPlanOp

public void switchJoinColPlanOp(LogicalOperator oldOp,
                                LogicalOperator newOp)

unsetSchema

public void unsetSchema()
                 throws VisitorException
Description copied from class: LogicalOperator
Unset the schema as if it had not been calculated. This is used by anyone who reorganizes the tree and needs to have schemas recalculated.

Overrides:
unsetSchema in class LogicalOperator
Throws:
VisitorException

getInputs

public List<LogicalOperator> getInputs()

visit

public void visit(LOVisitor v)
           throws VisitorException
Description copied from class: LogicalOperator
Visit this node with the provided visitor. This should only be called by the visitor class itself, never directly.

Specified by:
visit in class LogicalOperator
Parameters:
v - Visitor to visit with.
Throws:
VisitorException - if the visitor has a problem.

name

public String name()
Specified by:
name in class Operator<LOVisitor>

supportsMultipleInputs

public boolean supportsMultipleInputs()
Description copied from class: Operator
Indicates whether this operator supports multiple inputs.

Specified by:
supportsMultipleInputs in class Operator<LOVisitor>
Returns:
true if it does, otherwise false.

getFragOp

public LogicalOperator getFragOp()

setFragOp

public void setFragOp(LogicalOperator fragOp)

isTupleJoinCol

public boolean isTupleJoinCol()

getAtomicJoinColType

public byte getAtomicJoinColType()
                          throws FrontendException
Throws:
FrontendException

getTupleJoinColSchema

public Schema getTupleJoinColSchema()
                             throws FrontendException
Throws:
FrontendException


Copyright © ${year} The Apache Software Foundation