/* * DrakkarKeel - An Enterprise Collaborative Search Platform * * The contents of this file are subject under the terms described in the * DRAKKARKEEL_LICENSE file included in this distribution; you may not use this * file except in compliance with the License. * * 2013-2014 DrakkarKeel Platform. */ package drakkar.oar; import java.io.Serializable; /** * Esta clase es la encargada de incializar el tiempo de ejecución de Ice, para * poder establecer la comunicación entre las aplicaciones clientes y la aplicación * servidora * * */ public class Communication implements Serializable{ private static final long serialVersionUID = 70000000000001L; private Ice.Communicator communicator = null; private Ice.ObjectAdapter adapter = null; private boolean destroy = true, initialize = false; /** * Constructor por defecto de la clase */ public Communication() { } /** * */ public void initialize() { try { this.communicator = Ice.Util.initialize(); destroy = false; initialize = true; } catch (Ice.LocalException err) { err.printStackTrace(); } } /** * * @param args */ public void initialize(String[] args) { try { this.communicator = Ice.Util.initialize(args); destroy = false; initialize = true; } catch (Ice.LocalException err) { err.printStackTrace(); } } /** * Reinicia el el objeto Ice.Communicator */ public void reset() { if (this.adapter != null) { this.adapter.deactivate(); this.adapter.destroy(); this.adapter = null; } this.communicator.destroy(); this.communicator = Ice.Util.initialize(); destroy = false; initialize = true; } /** * Destruye el objeto Ice.Communicator */ public void destroy() { this.communicator.destroy(); destroy = true; initialize = false; } /** * Determina si el objeto Ice.Communicator está destruido * * @return true si el objeto Ice.Communicator esta destruido, false en caso contrario */ public boolean isDestroy() { return destroy; } /** * Determina si el objeto Ice.Communicator está inicializado * * @return true si el objeto Ice.Communicator esta destruido, false en caso contrario */ public boolean isInitialize() { return initialize; } /** *Devuelve la instancia del objeto Communicator de la clase * * @return instancia Communicator */ public Ice.Communicator getCommunicator() { return this.communicator; } /** * Devuelve la instancia del objeto ObjectAdapter de la clase * * @return instancia de ObjectAdapter */ public Ice.ObjectAdapter getAdapter() { return this.adapter; } /** * Modifica la instancia del objeto Communicator de la clase * * @param comm nuevo instancia de Communicator */ public void setCommunicator(Ice.Communicator comm) { this.communicator = comm; } /** * Modifica la instancia del objeto ObjectAdapter de la clase * * @param adapter nuevo instancia de ObjectAdapter */ public void setAdapter(Ice.ObjectAdapter adapter) { this.adapter = adapter; } }