vishnu.model.algebra
Class Projection

java.lang.Object
  extended by vishnu.model.algebra.AbstractUnaryRelation
      extended by vishnu.model.algebra.Projection
All Implemented Interfaces:
java.lang.Cloneable, Relation, UnaryRelation

public class Projection
extends AbstractUnaryRelation

Esta clase modela la relacion de proyeccion del algebra relacional.

Author:
Mariano Tepper
 

Field Summary
 
Fields inherited from class vishnu.model.algebra.AbstractUnaryRelation
algorithm
 
Constructor Summary
Projection(Relation p, java.util.List<java.lang.String> columns)
           
 
Method Summary
 java.lang.Object clone()
          Clona la relacion.
 java.util.List<java.lang.String> columnNames()
           
 void columnNames(java.util.List<java.lang.String> columnNames)
           
 boolean equals(java.lang.Object o)
           
protected  TableSignature getRestrictedSignature()
           
 boolean hasChanged()
          Indica si se realizaro alguna modifiaccion en la relacion.
 java.lang.String toString()
           
 
Methods inherited from class vishnu.model.algebra.AbstractUnaryRelation
algorithm, algorithm, perform, relation, relation, setChanged, setContext, signature
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Projection

public Projection(Relation p,
                  java.util.List<java.lang.String> columns)
Method Detail

columnNames

public java.util.List<java.lang.String> columnNames()

getRestrictedSignature

protected TableSignature getRestrictedSignature()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

clone

public java.lang.Object clone()
Description copied from interface: UnaryRelation
Clona la relacion.

Specified by:
clone in interface UnaryRelation
Specified by:
clone in class AbstractUnaryRelation

hasChanged

public boolean hasChanged()
Description copied from interface: Relation
Indica si se realizaro alguna modifiaccion en la relacion.

Specified by:
hasChanged in interface Relation
Overrides:
hasChanged in class AbstractUnaryRelation
Returns:
true si se realizaron cambios, false si no.

columnNames

public void columnNames(java.util.List<java.lang.String> columnNames)

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object