vishnu.model.algebra
Class AlgorithmFactoryImpl

java.lang.Object
  extended by vishnu.model.algebra.AlgorithmFactoryImpl
All Implemented Interfaces:
AlgorithmFactory

public class AlgorithmFactoryImpl
extends java.lang.Object
implements AlgorithmFactory

Esta clase implementa una libreria que asigna los algoritmos mas sencillos implementados para cada tipo de relacion.

Author:
Hernan Rancati
 

Nested Class Summary
 
Nested classes/interfaces inherited from interface vishnu.model.algebra.AlgorithmFactory
AlgorithmFactory.UnavailableAlgorithmException
 
Field Summary
protected  java.util.Map<java.lang.Class<? extends Relation>,java.util.List<Algorithm>> algorithms
           
protected static AlgorithmFactoryImpl factory
           
 
Constructor Summary
protected AlgorithmFactoryImpl()
           
 
Method Summary
 java.util.Collection<Algorithm> getAlgorithms(Relation r)
          Devuelve el algoritmo elegido para la relacion unaria r.
static AlgorithmFactoryImpl getFactory()
           
 void register(java.lang.Class<? extends Relation> c, Algorithm a)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

factory

protected static AlgorithmFactoryImpl factory

algorithms

protected java.util.Map<java.lang.Class<? extends Relation>,java.util.List<Algorithm>> algorithms
Constructor Detail

AlgorithmFactoryImpl

protected AlgorithmFactoryImpl()
Method Detail

getFactory

public static AlgorithmFactoryImpl getFactory()

getAlgorithms

public java.util.Collection<Algorithm> getAlgorithms(Relation r)
Description copied from interface: AlgorithmFactory
Devuelve el algoritmo elegido para la relacion unaria r.

Specified by:
getAlgorithms in interface AlgorithmFactory

register

public void register(java.lang.Class<? extends Relation> c,
                     Algorithm a)