--- projects/cms/source/server/uk/org/iscream/cms/server/clientinterface/CorbaControlHandlerServant.java 2001/02/28 19:04:00 1.6 +++ projects/cms/source/server/uk/org/iscream/cms/server/clientinterface/CorbaControlHandlerServant.java 2001/03/13 18:37:08 1.7 @@ -15,7 +15,7 @@ import uk.ac.ukc.iscream.client.*; * !!! Need a way to "shutdown" this class !!! * * @author $Author: tdb $ - * @version $Id: CorbaControlHandlerServant.java,v 1.6 2001/02/28 19:04:00 tdb Exp $ + * @version $Id: CorbaControlHandlerServant.java,v 1.7 2001/03/13 18:37:08 tdb Exp $ */ class CorbaControlHandlerServant extends CorbaControlHandlerPOA { @@ -24,7 +24,7 @@ class CorbaControlHandlerServant extends CorbaControlH /** * The current CVS revision of this class */ - public final String REVISION = "$Revision: 1.6 $"; + public final String REVISION = "$Revision: 1.7 $"; //---STATIC METHODS--- @@ -38,9 +38,8 @@ class CorbaControlHandlerServant extends CorbaControlH * @param queueMonitorInterval The interval at which to monitor our Queue. * @param clientname A name to identify the client. */ - public CorbaControlHandlerServant(PacketSorter packetSorter, Client client, int queueMonitorInterval, String clientname) { + public CorbaControlHandlerServant(PacketSorter packetSorter, Client client, String clientname) { _packetSorter = packetSorter; - _queueMonitorInterval = queueMonitorInterval; _hostList = ""; _client = client; _clientname = clientname; @@ -61,9 +60,15 @@ class CorbaControlHandlerServant extends CorbaControlH CorbaDataHandler dh = new CorbaDataHandler(_client); // register the Queue _packetSorter.register(dh.getQueue(), _hostList); - // startup a monitor on the DataHandler's queue, every minute - String queueName = _name + " CorbaHandler:"+_clientname; - dh.getQueue().startMonitor(_queueMonitorInterval*1000, _packetSorter.getQueue(), queueName); + try { + // startup a monitor on the DataHandler's queue + ConfigurationProxy cp = ConfigurationProxy.getInstance(); + int queueMonitorInterval = Integer.parseInt(cp.getProperty("ClientInterface", "Queue.MonitorInterval")); + String queueName = _name + " CorbaHandler:"+_clientname; + dh.getQueue().startMonitor(queueMonitorInterval*1000, _packetSorter.getQueue(), queueName); + } catch (PropertyNotFoundException e) { + _logger.write(toString(), Logger.WARNING, "failed to find queue monitor config, disabling. " + e); + } // start the DataHandler running dh.start(); // keep a reference @@ -170,11 +175,6 @@ class CorbaControlHandlerServant extends CorbaControlH * A reference to our DataHandler, if we have one */ private CorbaDataHandler _dataHandler; - - /** - * The interval at which to monitor our Queue - */ - private int _queueMonitorInterval; /** * A name to identify the client