Package es.ull.mazesolver.util
Class BlackboardManager
java.lang.Object
es.ull.mazesolver.util.BlackboardManager
Clase que gestiona el sistema de pizarras por canales utilizado por los
entornos para permitir la compartición de las pizarras sólo a subconjuntos de
agentes.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddBlackboard(Object blackboard)
Añade una nueva pizarra al gestor.addBlackboard(Object blackboard, String desired_channel)
Intenta añadir la pizarra al canal deseado.boolean
changeBlackboard(String channel, Object blackboard)
Cambia el objeto pizarra asociado a un canal ya creado.getBlackboard(String channel)
Obtiene la pizarra que hay en el canal indicado.boolean
removeBlackboard(String channel)
Elimina un canal del gestor de pizarras.
-
Constructor Details
-
BlackboardManager
public BlackboardManager()Inicializa el gestor de pizarras.
-
-
Method Details
-
getBlackboard
Obtiene la pizarra que hay en el canal indicado.- Parameters:
channel
- Canal del que se quiere obtener la pizarra.- Returns:
- El objeto pizarra del canal.
-
addBlackboard
Añade una nueva pizarra al gestor.- Parameters:
blackboard
- Objeto que representa la nueva pizarra. Las modificaciones realizadas a este objeto son visibles para todos los agentes que posean una referencia a la misma.- Returns:
- El nombre del nuevo canal donde se ha colocado la pizarra.
-
addBlackboard
Intenta añadir la pizarra al canal deseado. Esto será posible sólo si el canal no está ya ocupado.- Parameters:
blackboard
- Objeto que representa la pizarra.desired_channel
- Canal donde se quiere colocar la pizarra.- Returns:
- Canal donde finalmente se ha colocado la pizarra.
-
changeBlackboard
Cambia el objeto pizarra asociado a un canal ya creado.- Parameters:
channel
- Canal en el que modificar la pizarra.blackboard
- Nueva pizarra que colocar en el canal.- Returns:
true
si se ha realizado el cambio yfalse
si el canal indicado no existía.
-
removeBlackboard
Elimina un canal del gestor de pizarras.- Parameters:
channel
- Canal que eliminar.- Returns:
true
si se ha realizado la eliminación yfalse
si el canal indicado no existía.
-