Revision: 41955
          http://brlcad.svn.sourceforge.net/brlcad/?rev=41955&view=rev
Author:   davidloman
Date:     2011-01-05 17:26:21 +0000 (Wed, 05 Jan 2011)

Log Message:
-----------
Cascade allowance of ip/hostname for PkgServer listening all the way up to 
GeometryService class.  Add Default port and IPaddy to GeometryService class

Modified Paths:
--------------
    rt^3/trunk/include/GeometryService.h
    rt^3/trunk/include/PortalManager.h
    rt^3/trunk/src/GS/GeometryService.cxx
    rt^3/trunk/src/libNet/PortalManager.cxx

Modified: rt^3/trunk/include/GeometryService.h
===================================================================
--- rt^3/trunk/include/GeometryService.h        2011-01-05 17:07:48 UTC (rev 
41954)
+++ rt^3/trunk/include/GeometryService.h        2011-01-05 17:26:21 UTC (rev 
41955)
@@ -31,11 +31,15 @@
 #include "DataManager.h"
 
 #include <QtCore/QString>
+#include <QtNetwork/QHostAddress>
 
+static const quint16 DEFAULT_LISTEN_PORT = 5309;
+static const QHostAddress DEFAULT_LISTEN_ADDY = QHostAddress::LocalHost;
+
 class GeometryService : public ControlledThread, public INetMsgHandler
 {
 public:
-       GeometryService(const QString localNodeName, const quint16 listenPort);
+       GeometryService(const QString localNodeName, const quint16 listenPort = 
DEFAULT_LISTEN_PORT, const QHostAddress listenAddy = DEFAULT_LISTEN_ADDY);
        virtual ~GeometryService();
     bool handleNetMsg(NetMsg* msg);
     DataManager* getDataManager();
@@ -49,6 +53,7 @@
        Logger* log;
        QString localNodeName;
        quint16 listenPort;
+       QHostAddress listenAddy;
 
        PortalManager* portalMan;
        DataManager* dataMan;

Modified: rt^3/trunk/include/PortalManager.h
===================================================================
--- rt^3/trunk/include/PortalManager.h  2011-01-05 17:07:48 UTC (rev 41954)
+++ rt^3/trunk/include/PortalManager.h  2011-01-05 17:26:21 UTC (rev 41955)
@@ -37,13 +37,14 @@
 #include <QtCore/QList>
 #include <QtCore/QMutex>
 #include <QtCore/QString>
+#include <QtNetwork/QHostAddress>
 
 class Portal;
 
 class PortalManager : public ControlledThread, public INetMsgHandler
 {
 public:
-       PortalManager(QString localNodeName, quint16 port = 0);
+       PortalManager(QString localNodeName, quint16 port = 0, QHostAddress 
address = QHostAddress::LocalHost);
        ~PortalManager();
 
        Portal* connectToHost(QString host, quint16 port);
@@ -57,7 +58,9 @@
 private:
        QString localNodeName;
        Logger* log;
-       quint16 port;
+
+       quint16 listenPort;
+       QHostAddress listenAddress;
        PkgTcpServer* tcpServer;
 
        QMutex masterFDSLock;

Modified: rt^3/trunk/src/GS/GeometryService.cxx
===================================================================
--- rt^3/trunk/src/GS/GeometryService.cxx       2011-01-05 17:07:48 UTC (rev 
41954)
+++ rt^3/trunk/src/GS/GeometryService.cxx       2011-01-05 17:26:21 UTC (rev 
41955)
@@ -30,8 +30,8 @@
 #include "PongMsg.h"
 
 
-GeometryService::GeometryService(const QString localNodeName, quint16 
listenPort) :
-localNodeName(localNodeName), listenPort(listenPort)
+GeometryService::GeometryService(const QString localNodeName, const quint16 
listenPort, const QHostAddress listenAddy) :
+localNodeName(localNodeName), listenPort(listenPort), listenAddy(listenAddy)
 {
     this->log = Logger::getInstance();
     this->log->logINFO("GeometryService", localNodeName + " is starting 
up...");

Modified: rt^3/trunk/src/libNet/PortalManager.cxx
===================================================================
--- rt^3/trunk/src/libNet/PortalManager.cxx     2011-01-05 17:07:48 UTC (rev 
41954)
+++ rt^3/trunk/src/libNet/PortalManager.cxx     2011-01-05 17:26:21 UTC (rev 
41955)
@@ -32,10 +32,10 @@
 #include <stdio.h>
 #include <errno.h>
 
-PortalManager::PortalManager(QString localNodeName, quint16 port) :
-       ControlledThread(localNodeName + "PortMan") {
-       this->localNodeName = localNodeName;
-       this->port = port;
+PortalManager::PortalManager(QString localNodeName, quint16 listenPort, 
QHostAddress listenAddress) :
+       ControlledThread(localNodeName + "PortMan"), 
localNodeName(localNodeName),
+       listenPort(listenPort), listenAddress(listenAddress) {
+
        this->tcpServer = new PkgTcpServer();
        this->fdPortalMap = new QMap<int, Portal*> ();
        this->portalsLock = new QMutex();
@@ -75,14 +75,16 @@
        FD_ZERO(&readfds);
        FD_ZERO(&exceptionfds);
 
-       if (this->port != 0) {
-               listener = this->tcpServer->listen(this->port);
+       if (this->listenPort != 0) {
+               listener = this->tcpServer->listen(this->listenPort, 
this->listenAddress.toString().toStdString());
+
                if (listener < 0) {
                        this->log->logERROR("PortalManager", "Failed to 
listen");
                        return;
                } else {
-                       QString s("Listening on port: ");
-                       s.append(QString::number(port));
+                       QString s("Listening on: ");
+                       s.append(this->listenAddress.toString() + ":");
+                       s.append(QString::number(this->listenPort));
                        s.append(" FD:");
                        s.append(QString::number(listener));
                        this->log->logINFO("PortalManager", s);


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Learn how Oracle Real Application Clusters (RAC) One Node allows customers
to consolidate database storage, standardize their database environment, and, 
should the need arise, upgrade to a full multi-node Oracle RAC database 
without downtime or disruption
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to