Skip to content

Commit c711d62

Browse files
authored
Merge pull request #996 from m-seker/bugfix/995
ENABLE_AVAHI is not included in WebServer
2 parents e53760b + 9204f8a commit c711d62

File tree

4 files changed

+32
-8
lines changed

4 files changed

+32
-8
lines changed

include/flatbufserver/FlatBufferServer.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
// qt
88
#include <QVector>
99

10+
class BonjourServiceRegister;
1011
class QTcpServer;
1112
class FlatBufferClient;
1213
class NetOrigin;
@@ -63,6 +64,7 @@ private slots:
6364
int _timeout;
6465
quint16 _port;
6566
const QJsonDocument _config;
67+
BonjourServiceRegister * _serviceRegister = nullptr;
6668

6769
QVector<FlatBufferClient*> _openConnections;
6870
};

libsrc/flatbufserver/FlatBufferServer.cpp

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,16 @@
11
#include <flatbufserver/FlatBufferServer.h>
22
#include "FlatBufferClient.h"
3+
#include "HyperionConfig.h"
34

45
// util
56
#include <utils/NetOrigin.h>
67
#include <utils/GlobalSignals.h>
78

9+
// bonjour
10+
#ifdef ENABLE_AVAHI
11+
#include <bonjour/bonjourserviceregister.h>
12+
#endif
13+
814
// qt
915
#include <QJsonObject>
1016
#include <QTcpServer>
@@ -93,14 +99,27 @@ void FlatBufferServer::startServer()
9399
{
94100
if(!_server->isListening())
95101
{
96-
if(!_server->listen(QHostAddress::Any, _port))
97-
{
98-
Error(_log,"Failed to bind port %d", _port);
99-
}
100-
else
101-
{
102-
Info(_log,"Started on port %d", _port);
103-
}
102+
if(!_server->listen(QHostAddress::Any, _port))
103+
{
104+
Error(_log,"Failed to bind port %d", _port);
105+
}
106+
else
107+
{
108+
Info(_log,"Started on port %d", _port);
109+
#ifdef ENABLE_AVAHI
110+
if(_serviceRegister == nullptr)
111+
{
112+
_serviceRegister = new BonjourServiceRegister(this);
113+
_serviceRegister->registerService("_hyperiond-flatbuf._tcp", _port);
114+
}
115+
else if(_serviceRegister->getPort() != _port)
116+
{
117+
delete _serviceRegister;
118+
_serviceRegister = new BonjourServiceRegister(this);
119+
_serviceRegister->registerService("_hyperiond-flatbuf._tcp", _port);
120+
}
121+
#endif
122+
}
104123
}
105124
}
106125

libsrc/jsonserver/JsonServer.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include <stdexcept>
33

44
// project includes
5+
#include "HyperionConfig.h"
56
#include <jsonserver/JsonServer.h>
67
#include "JsonClientConnection.h"
78

@@ -49,6 +50,7 @@ void JsonServer::start()
4950
return;
5051
}
5152
Info(_log, "Started on port %d", _port);
53+
5254
#ifdef ENABLE_AVAHI
5355
if(_serviceRegister == nullptr)
5456
{

libsrc/webserver/WebServer.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
#include "webserver/WebServer.h"
2+
#include "HyperionConfig.h"
23
#include "StaticFileServing.h"
34
#include "QtHttpServer.h"
45

0 commit comments

Comments
 (0)