org.objectweb.medor.query.lib
Class BasicPropagatedField

java.lang.Object
  |
  +--org.objectweb.medor.lib.BasicField
        |
        +--org.objectweb.medor.query.lib.BasicPropagatedField
All Implemented Interfaces:
java.lang.Cloneable, Cloneable, Field, PropagatedField, QueryTreeField
Direct Known Subclasses:
BasicPropagFromNestedField

public class BasicPropagatedField
extends BasicField
implements PropagatedField

Author:
Sebastien Chassande-Barrioz

Field Summary
protected  java.util.HashMap ancestors
           
protected  int index
           
 
Fields inherited from interface org.objectweb.medor.api.Field
NONULLS, NULLABLE, NULLABLEUNKNOWN, PNAMENAME
 
Constructor Summary
BasicPropagatedField(java.lang.String name, PType type, QueryTree qt, Field[] _ancestors)
           
 
Method Summary
 int getIndex()
          The index of this Field in the array made of the concatenation of the tuples from the children QueryTrees.
 short getNullStatus()
          What is the status of the Field regarding null values (NullStatus).
 Field[] getOriginFields()
           
protected  java.util.ArrayList getOriginFields(java.util.ArrayList src, java.util.ArrayList dst)
           
protected  java.util.ArrayList getPrevious()
           
 Field[] getPreviousFields()
           
 Field[] getPreviousFields(java.lang.String oldFieldName)
           
 QueryTree getQueryTree()
          public Object clone() { }
 void replacePreviousField(Field[] _ancestors)
           
 void setIndex(int idx)
           
 
Methods inherited from class org.objectweb.medor.lib.BasicField
clone, getName, getType
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.objectweb.medor.api.Field
getName, getType
 
Methods inherited from interface org.objectweb.medor.api.Cloneable
clone
 

Field Detail

ancestors

protected java.util.HashMap ancestors

index

protected int index
Constructor Detail

BasicPropagatedField

public BasicPropagatedField(java.lang.String name,
                            PType type,
                            QueryTree qt,
                            Field[] _ancestors)
Method Detail

getQueryTree

public QueryTree getQueryTree()
public Object clone() { }

Specified by:
getQueryTree in interface QueryTreeField

getIndex

public int getIndex()
Description copied from interface: PropagatedField
The index of this Field in the array made of the concatenation of the tuples from the children QueryTrees. This information is used to pick the right value at evaluation time from this concatenated tuple to put it in the result Tuple.

Specified by:
getIndex in interface PropagatedField

setIndex

public void setIndex(int idx)
Specified by:
setIndex in interface PropagatedField

getPreviousFields

public Field[] getPreviousFields()
Specified by:
getPreviousFields in interface PropagatedField

getPreviousFields

public Field[] getPreviousFields(java.lang.String oldFieldName)
Specified by:
getPreviousFields in interface PropagatedField

getOriginFields

public Field[] getOriginFields()
Specified by:
getOriginFields in interface PropagatedField

getOriginFields

protected java.util.ArrayList getOriginFields(java.util.ArrayList src,
                                              java.util.ArrayList dst)

getPrevious

protected java.util.ArrayList getPrevious()

getNullStatus

public short getNullStatus()
Description copied from interface: Field
What is the status of the Field regarding null values (NullStatus).

Specified by:
getNullStatus in interface Field
Overrides:
getNullStatus in class BasicField
Returns:
the Null status of the Field
See Also:
NullStatus

replacePreviousField

public void replacePreviousField(Field[] _ancestors)
Specified by:
replacePreviousField in interface PropagatedField