code optimization / 0.1.1
parent
8dce1a7e06
commit
1eb69354e9
32
resolver.cpp
32
resolver.cpp
|
@ -35,21 +35,6 @@ Resolver::Resolver(const QString& addr, quint16 port, QObject* parent) :
|
|||
connect(m_tcpServer, SIGNAL(newConnection()), this, SLOT(slotNewUser()));
|
||||
}
|
||||
|
||||
void Resolver::closeSocketViaDescriptor(int id)
|
||||
{
|
||||
if(m_sockets.contains(id)) {
|
||||
m_sockets.value(id)->close();
|
||||
}
|
||||
}
|
||||
|
||||
QSharedPointer<QTcpSocket> Resolver::getSocketViaDescriptor(int id)
|
||||
{
|
||||
if (!m_sockets.contains(id)) {
|
||||
qInfo() << "Resolver::getSocketViaDescriptor: Requested socket not found";
|
||||
}
|
||||
return m_sockets.value(id);
|
||||
}
|
||||
|
||||
void Resolver::disableAPI()
|
||||
{
|
||||
m_NoApi = true;
|
||||
|
@ -71,10 +56,8 @@ void Resolver::slotNewUser()
|
|||
if (!m_tcpServer->isListening()) return;
|
||||
|
||||
QTcpSocket* clientSocket = m_tcpServer->nextPendingConnection();
|
||||
int idUserSock = clientSocket->socketDescriptor();
|
||||
m_sockets.insert(idUserSock, QSharedPointer<QTcpSocket>(clientSocket));
|
||||
connect (m_sockets.value(idUserSock).data(), SIGNAL(readyRead()), this, SLOT(slotReadyClient()));
|
||||
connect (m_sockets.value(idUserSock).data(), SIGNAL(disconnected()), this, SLOT(slotClientDisconnected()));
|
||||
connect (clientSocket, SIGNAL(readyRead()), this, SLOT(slotReadyClient()));
|
||||
connect (clientSocket, SIGNAL(disconnected()), this, SLOT(deleteLater()));
|
||||
}
|
||||
|
||||
void Resolver::slotReadyClient()
|
||||
|
@ -130,13 +113,6 @@ void Resolver::slotReadyClient()
|
|||
}
|
||||
}
|
||||
|
||||
void Resolver::slotClientDisconnected()
|
||||
{
|
||||
QTcpSocket* clientSocket = static_cast<QTcpSocket*>(sender());
|
||||
auto idUserSock = clientSocket->socketDescriptor();
|
||||
m_sockets.remove(idUserSock);
|
||||
}
|
||||
|
||||
void Resolver::convertStrToRaw(const QString &str, Address &array)
|
||||
{
|
||||
inet_pton(AF_INET6, str.toUtf8(), (void*)array.data());
|
||||
|
@ -153,9 +129,9 @@ QString Resolver::decodeMeshToIP(const QString &meshname)
|
|||
std::vector<uint8_t> raw;
|
||||
try {
|
||||
raw = cppcodec::base32_rfc4648::decode(mesh);
|
||||
} catch (cppcodec::padding_error) {
|
||||
} catch (cppcodec::padding_error const&) {
|
||||
return QString();
|
||||
} catch (cppcodec::symbol_error) {
|
||||
} catch (cppcodec::symbol_error const&) {
|
||||
return QString();
|
||||
}
|
||||
|
||||
|
|
|
@ -14,8 +14,6 @@ class Resolver : public QObject
|
|||
Q_OBJECT
|
||||
public:
|
||||
explicit Resolver(const QString&, quint16, QObject* parent = nullptr);
|
||||
void closeSocketViaDescriptor(int id);
|
||||
QSharedPointer<QTcpSocket> getSocketViaDescriptor(int id);
|
||||
|
||||
void disableAPI();
|
||||
void disableWebPage();
|
||||
|
@ -24,14 +22,11 @@ public:
|
|||
private slots:
|
||||
void slotNewUser();
|
||||
void slotReadyClient();
|
||||
void slotClientDisconnected();
|
||||
|
||||
private:
|
||||
QTcpServer* m_tcpServer;
|
||||
QHostAddress m_address;
|
||||
quint16 m_port;
|
||||
QMap<int, QSharedPointer<QTcpSocket>> m_sockets;
|
||||
|
||||
|
||||
void convertStrToRaw(const QString& str, Address& array);
|
||||
QString getBase32(const Address& rawAddr);
|
||||
|
|
Loading…
Reference in New Issue