vishnu.model.algebra.algorithms.join
Class DefaultCartesianProductAlgorithm

java.lang.Object
  extended by vishnu.model.algebra.algorithms.join.DefaultCartesianProductAlgorithm
All Implemented Interfaces:
Algorithm, BinaryAlgorithm

public class DefaultCartesianProductAlgorithm
extends java.lang.Object
implements BinaryAlgorithm

Author:
Hernan Rancati
 

Constructor Summary
DefaultCartesianProductAlgorithm()
           
 
Method Summary
 void attach(Relation r)
          Vincula una relacion al algoritmo para su ejecucion.
 boolean canBePerformed()
          Indica si el algoritmo puede ser ejecutado sobre la relacion definida.
 void cancel()
          Cancela la ejecucion del algoritmo.
 Algorithm clone()
          Clona el algoritmo.
 boolean equals(java.lang.Object o)
           
 int hashCode()
           
 boolean isCanceled()
          Indica si el algoritmo fue cancelado.
 void leftTable(TableContext c)
          Setea la tabla izquierda del algoritmo.
 void perform(Relation.Context c)
          Ejecuta el algoritmo con el contexto dado
protected  void performProduct(Table leftTable, Table rightTable, Table destTable, Session s)
          Resuelve el producto cartesiano
 void rightTable(TableContext c)
          Setea la tabla derecha del algoritmo.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DefaultCartesianProductAlgorithm

public DefaultCartesianProductAlgorithm()
Method Detail

performProduct

protected void performProduct(Table leftTable,
                              Table rightTable,
                              Table destTable,
                              Session s)
Resuelve el producto cartesiano


canBePerformed

public boolean canBePerformed()
Description copied from interface: Algorithm
Indica si el algoritmo puede ser ejecutado sobre la relacion definida.

Specified by:
canBePerformed in interface Algorithm
Returns:
true si puede ser ejecutado, false si no.

leftTable

public void leftTable(TableContext c)
Description copied from interface: BinaryAlgorithm
Setea la tabla izquierda del algoritmo.

Specified by:
leftTable in interface BinaryAlgorithm

rightTable

public void rightTable(TableContext c)
Description copied from interface: BinaryAlgorithm
Setea la tabla derecha del algoritmo.

Specified by:
rightTable in interface BinaryAlgorithm

attach

public void attach(Relation r)
Description copied from interface: Algorithm
Vincula una relacion al algoritmo para su ejecucion.

Specified by:
attach in interface Algorithm
Parameters:
r - - la relacion sobre la que se ejecutara el algoritmo.

perform

public void perform(Relation.Context c)
Description copied from interface: Algorithm
Ejecuta el algoritmo con el contexto dado

Specified by:
perform in interface Algorithm
Parameters:
c - - el contexto de ejecucion.

equals

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

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

cancel

public void cancel()
Description copied from interface: Algorithm
Cancela la ejecucion del algoritmo.

Specified by:
cancel in interface Algorithm

isCanceled

public boolean isCanceled()
Description copied from interface: Algorithm
Indica si el algoritmo fue cancelado.

Specified by:
isCanceled in interface Algorithm
Returns:
true si fue cancelado, false si no.

toString

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

clone

public Algorithm clone()
Description copied from interface: Algorithm
Clona el algoritmo.

Specified by:
clone in interface Algorithm
Overrides:
clone in class java.lang.Object