mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 16:41:02 +02:00
remove SharedNodePointer from some packet callbacks
This commit is contained in:
parent
fbd287472d
commit
d617b71232
15 changed files with 43 additions and 59 deletions
|
@ -210,7 +210,7 @@ void AssignmentClient::sendAssignmentRequest() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AssignmentClient::handleCreateAssignmentPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode, HifiSockAddr senderSockAddr) {
|
void AssignmentClient::handleCreateAssignmentPacket(QSharedPointer<NLPacket> packet) {
|
||||||
qDebug() << "Received a PacketType::CreateAssignment - attempting to unpack.";
|
qDebug() << "Received a PacketType::CreateAssignment - attempting to unpack.";
|
||||||
|
|
||||||
// construct the deployed assignment from the packet data
|
// construct the deployed assignment from the packet data
|
||||||
|
@ -223,7 +223,7 @@ void AssignmentClient::handleCreateAssignmentPacket(QSharedPointer<NLPacket> pac
|
||||||
|
|
||||||
// switch our DomainHandler hostname and port to whoever sent us the assignment
|
// switch our DomainHandler hostname and port to whoever sent us the assignment
|
||||||
|
|
||||||
nodeList->getDomainHandler().setSockAddr(senderSockAddr, _assignmentServerHostname);
|
nodeList->getDomainHandler().setSockAddr(packet->getSenderSockAddr(), _assignmentServerHostname);
|
||||||
nodeList->getDomainHandler().setAssignmentUUID(_currentAssignment->getUUID());
|
nodeList->getDomainHandler().setAssignmentUUID(_currentAssignment->getUUID());
|
||||||
|
|
||||||
qDebug() << "Destination IP for assignment is" << nodeList->getDomainHandler().getIP().toString();
|
qDebug() << "Destination IP for assignment is" << nodeList->getDomainHandler().getIP().toString();
|
||||||
|
@ -261,7 +261,9 @@ void AssignmentClient::handleCreateAssignmentPacket(QSharedPointer<NLPacket> pac
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AssignmentClient::handleStopNodePacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode, HifiSockAddr senderSockAddr) {
|
void AssignmentClient::handleStopNodePacket(QSharedPointer<NLPacket> packet) {
|
||||||
|
const HifiSockAddr& senderSockAddr = packet->getSenderSockAddr();
|
||||||
|
|
||||||
if (senderSockAddr.getAddress() == QHostAddress::LocalHost ||
|
if (senderSockAddr.getAddress() == QHostAddress::LocalHost ||
|
||||||
senderSockAddr.getAddress() == QHostAddress::LocalHostIPv6) {
|
senderSockAddr.getAddress() == QHostAddress::LocalHostIPv6) {
|
||||||
qDebug() << "AssignmentClientMonitor at" << senderSockAddr << "requested stop via PacketType::StopNode.";
|
qDebug() << "AssignmentClientMonitor at" << senderSockAddr << "requested stop via PacketType::StopNode.";
|
||||||
|
|
|
@ -39,8 +39,8 @@ public slots:
|
||||||
void aboutToQuit();
|
void aboutToQuit();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void handleCreateAssignmentPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode, HifiSockAddr senderSockAddr);
|
void handleCreateAssignmentPacket(QSharedPointer<NLPacket> packet);
|
||||||
void handleStopNodePacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode, HifiSockAddr senderSockAddr);
|
void handleStopNodePacket(QSharedPointer<NLPacket> packet);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void setUpStatusToMonitor();
|
void setUpStatusToMonitor();
|
||||||
|
|
|
@ -432,9 +432,8 @@ void AvatarMixer::handleAvatarBillboardPacket(QSharedPointer<NLPacket> packet, S
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AvatarMixer::handleKillAvatarPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode) {
|
void AvatarMixer::handleKillAvatarPacket(QSharedPointer<NLPacket> packet) {
|
||||||
auto nodeList = DependencyManager::get<NodeList>();
|
DependencyManager::get<NodeList>()->processKillNode(*packet);
|
||||||
nodeList->processKillNode(*packet);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AvatarMixer::sendStatsPacket() {
|
void AvatarMixer::sendStatsPacket() {
|
||||||
|
|
|
@ -35,7 +35,7 @@ private slots:
|
||||||
void handleAvatarDataPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
void handleAvatarDataPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
||||||
void handleAvatarIdentityPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
void handleAvatarIdentityPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
||||||
void handleAvatarBillboardPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
void handleAvatarBillboardPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
||||||
void handleKillAvatarPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
void handleKillAvatarPacket(QSharedPointer<NLPacket> packet);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void broadcastAvatarData();
|
void broadcastAvatarData();
|
||||||
|
|
|
@ -26,9 +26,8 @@ EntityServer::EntityServer(NLPacket& packet) :
|
||||||
_entitySimulation(NULL)
|
_entitySimulation(NULL)
|
||||||
{
|
{
|
||||||
auto& packetReceiver = DependencyManager::get<NodeList>()->getPacketReceiver();
|
auto& packetReceiver = DependencyManager::get<NodeList>()->getPacketReceiver();
|
||||||
packetReceiver.registerListener(PacketType::EntityAdd, this, "handleEntityAddPacket");
|
packetReceiver.registerListenerForTypes({ PacketType::EntityAdd, PacketType::EntityEdit, PacketType::EntityErase },
|
||||||
packetReceiver.registerListener(PacketType::EntityEdit, this, "handleEntityEditPacket");
|
this, "handleEntityPacket");
|
||||||
packetReceiver.registerListener(PacketType::EntityErase, this, "handleEntityErasePacket");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
EntityServer::~EntityServer() {
|
EntityServer::~EntityServer() {
|
||||||
|
@ -41,19 +40,7 @@ EntityServer::~EntityServer() {
|
||||||
tree->removeNewlyCreatedHook(this);
|
tree->removeNewlyCreatedHook(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
void EntityServer::handleEntityAddPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode) {
|
void EntityServer::handleEntityPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode) {
|
||||||
if (_octreeInboundPacketProcessor) {
|
|
||||||
_octreeInboundPacketProcessor->queueReceivedPacket(packet, senderNode);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void EntityServer::handleEntityEditPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode) {
|
|
||||||
if (_octreeInboundPacketProcessor) {
|
|
||||||
_octreeInboundPacketProcessor->queueReceivedPacket(packet, senderNode);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void EntityServer::handleEntityErasePacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode) {
|
|
||||||
if (_octreeInboundPacketProcessor) {
|
if (_octreeInboundPacketProcessor) {
|
||||||
_octreeInboundPacketProcessor->queueReceivedPacket(packet, senderNode);
|
_octreeInboundPacketProcessor->queueReceivedPacket(packet, senderNode);
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,9 +50,7 @@ protected:
|
||||||
virtual Octree* createTree();
|
virtual Octree* createTree();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void handleEntityAddPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
void handleEntityPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
||||||
void handleEntityEditPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
|
||||||
void handleEntityErasePacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode);
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
EntitySimulation* _entitySimulation;
|
EntitySimulation* _entitySimulation;
|
||||||
|
|
|
@ -1415,7 +1415,7 @@ void DomainServer::processICEPingReplyPacket(QSharedPointer<NLPacket> packet) {
|
||||||
|
|
||||||
void DomainServer::processNodeJSONStatsPacket(QSharedPointer<NLPacket> packet, SharedNodePointer sendingNode) {
|
void DomainServer::processNodeJSONStatsPacket(QSharedPointer<NLPacket> packet, SharedNodePointer sendingNode) {
|
||||||
if (sendingNode->getLinkedData()) {
|
if (sendingNode->getLinkedData()) {
|
||||||
reinterpret_cast<DomainServerNodeData*>(sendingNode->getLinkedData())->processJSONStatsPacket(*packet);
|
dynamic_cast<DomainServerNodeData*>(sendingNode->getLinkedData())->processJSONStatsPacket(*packet);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3821,7 +3821,7 @@ void Application::domainChanged(const QString& domainHostname) {
|
||||||
_domainConnectionRefusals.clear();
|
_domainConnectionRefusals.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Application::handleDomainConnectionDeniedPacket(QSharedPointer<NLPacket> packet, SharedNodePointer senderNode) {
|
void Application::handleDomainConnectionDeniedPacket(QSharedPointer<NLPacket> packet) {
|
||||||
QDataStream packetStream(packet.data());
|
QDataStream packetStream(packet.data());
|
||||||
|
|
||||||
QString reason;
|
QString reason;
|
||||||
|
|
|
@ -447,7 +447,7 @@ public slots:
|
||||||
|
|
||||||
void notifyPacketVersionMismatch();
|
void notifyPacketVersionMismatch();
|
||||||
|
|
||||||
void handleDomainConnectionDeniedPacket(QSharedPointer<NLPacket>, SharedNodePointer senderNode);
|
void handleDomainConnectionDeniedPacket(QSharedPointer<NLPacket> packet);
|
||||||
|
|
||||||
void cameraMenuChanged();
|
void cameraMenuChanged();
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ EntityEditPacketSender::EntityEditPacketSender() {
|
||||||
packetReceiver.registerListener(PacketType::EntityEditNack, this, "processEntityEditNackPacket");
|
packetReceiver.registerListener(PacketType::EntityEditNack, this, "processEntityEditNackPacket");
|
||||||
}
|
}
|
||||||
|
|
||||||
void EntityEditPacketSender::processEntityEditNackPacket(QSharedPointer<NLPacket> packet, HifiSockAddr senderSockAddr) {
|
void EntityEditPacketSender::processEntityEditNackPacket(QSharedPointer<NLPacket> packet) {
|
||||||
// if (!Menu::getInstance()->isOptionChecked(MenuOption::DisableNackPackets)) {
|
// if (!Menu::getInstance()->isOptionChecked(MenuOption::DisableNackPackets)) {
|
||||||
processNackPacket(QByteArray::fromRawData(packet->getData(), packet->getSizeWithHeader()));
|
processNackPacket(QByteArray::fromRawData(packet->getData(), packet->getSizeWithHeader()));
|
||||||
// }
|
// }
|
||||||
|
|
|
@ -32,7 +32,7 @@ public:
|
||||||
|
|
||||||
void queueEraseEntityMessage(const EntityItemID& entityItemID);
|
void queueEraseEntityMessage(const EntityItemID& entityItemID);
|
||||||
|
|
||||||
void processEntityEditNackPacket(QSharedPointer<NLPacket> packet, HifiSockAddr senderSockAddr);
|
void processEntityEditNackPacket(QSharedPointer<NLPacket> packet);
|
||||||
|
|
||||||
// My server type is the model server
|
// My server type is the model server
|
||||||
virtual char getMyNodeType() const { return NodeType::EntityServer; }
|
virtual char getMyNodeType() const { return NodeType::EntityServer; }
|
||||||
|
|
|
@ -43,6 +43,7 @@ DomainHandler::DomainHandler(QObject* parent) :
|
||||||
|
|
||||||
packetReceiver.registerListener(PacketType::ICEServerPeerInformation, this, "processICEResponsePacket");
|
packetReceiver.registerListener(PacketType::ICEServerPeerInformation, this, "processICEResponsePacket");
|
||||||
packetReceiver.registerListener(PacketType::DomainServerRequireDTLS, this, "processDTLSRequirementPacket");
|
packetReceiver.registerListener(PacketType::DomainServerRequireDTLS, this, "processDTLSRequirementPacket");
|
||||||
|
packetReceiver.registerListener(PacketType::ICEPingReply, this, "processICEPingReplyPacket");
|
||||||
}
|
}
|
||||||
|
|
||||||
void DomainHandler::clearConnectionInfo() {
|
void DomainHandler::clearConnectionInfo() {
|
||||||
|
@ -286,6 +287,24 @@ void DomainHandler::settingsRequestFinished() {
|
||||||
settingsReply->deleteLater();
|
settingsReply->deleteLater();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DomainHandler::processICEPingReplyPacket(QSharedPointer<NLPacket> packet) {
|
||||||
|
const HifiSockAddr& senderSockAddr = packet->getSenderSockAddr();
|
||||||
|
qCDebug(networking) << "Received reply from domain-server on" << senderSockAddr;
|
||||||
|
|
||||||
|
if (getIP().isNull()) {
|
||||||
|
// for now we're unsafely assuming this came back from the domain
|
||||||
|
if (senderSockAddr == _icePeer.getLocalSocket()) {
|
||||||
|
qCDebug(networking) << "Connecting to domain using local socket";
|
||||||
|
activateICELocalSocket();
|
||||||
|
} else if (senderSockAddr == _icePeer.getPublicSocket()) {
|
||||||
|
qCDebug(networking) << "Conecting to domain using public socket";
|
||||||
|
activateICEPublicSocket();
|
||||||
|
} else {
|
||||||
|
qCDebug(networking) << "Reply does not match either local or public socket for domain. Will not connect.";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void DomainHandler::processDTLSRequirementPacket(QSharedPointer<NLPacket> dtlsRequirementPacket) {
|
void DomainHandler::processDTLSRequirementPacket(QSharedPointer<NLPacket> dtlsRequirementPacket) {
|
||||||
// figure out the port that the DS wants us to use for us to talk to them with DTLS
|
// figure out the port that the DS wants us to use for us to talk to them with DTLS
|
||||||
unsigned short dtlsPort;
|
unsigned short dtlsPort;
|
||||||
|
|
|
@ -71,9 +71,7 @@ public:
|
||||||
void requestDomainSettings();
|
void requestDomainSettings();
|
||||||
const QJsonObject& getSettingsObject() const { return _settingsObject; }
|
const QJsonObject& getSettingsObject() const { return _settingsObject; }
|
||||||
|
|
||||||
void processDTLSRequirementPacket(QSharedPointer<NLPacket> dtlsRequirementPacket);
|
|
||||||
void processICEResponsePacket(QSharedPointer<NLPacket> icePacket);
|
|
||||||
|
|
||||||
void setPendingPath(const QString& pendingPath) { _pendingPath = pendingPath; }
|
void setPendingPath(const QString& pendingPath) { _pendingPath = pendingPath; }
|
||||||
const QString& getPendingPath() { return _pendingPath; }
|
const QString& getPendingPath() { return _pendingPath; }
|
||||||
void clearPendingPath() { _pendingPath.clear(); }
|
void clearPendingPath() { _pendingPath.clear(); }
|
||||||
|
@ -85,6 +83,10 @@ public slots:
|
||||||
void setHostnameAndPort(const QString& hostname, quint16 port = DEFAULT_DOMAIN_SERVER_PORT);
|
void setHostnameAndPort(const QString& hostname, quint16 port = DEFAULT_DOMAIN_SERVER_PORT);
|
||||||
void setIceServerHostnameAndID(const QString& iceServerHostname, const QUuid& id);
|
void setIceServerHostnameAndID(const QString& iceServerHostname, const QUuid& id);
|
||||||
|
|
||||||
|
void processICEPingReplyPacket(QSharedPointer<NLPacket> packet);
|
||||||
|
void processDTLSRequirementPacket(QSharedPointer<NLPacket> dtlsRequirementPacket);
|
||||||
|
void processICEResponsePacket(QSharedPointer<NLPacket> icePacket);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void completedHostnameLookup(const QHostInfo& hostInfo);
|
void completedHostnameLookup(const QHostInfo& hostInfo);
|
||||||
void completedIceServerHostnameLookup();
|
void completedIceServerHostnameLookup();
|
||||||
|
|
|
@ -93,12 +93,9 @@ NodeList::NodeList(char newOwnerType, unsigned short socketListenPort, unsigned
|
||||||
|
|
||||||
auto& packetReceiver = getPacketReceiver();
|
auto& packetReceiver = getPacketReceiver();
|
||||||
packetReceiver.registerListener(PacketType::DomainList, this, "processDomainServerList");
|
packetReceiver.registerListener(PacketType::DomainList, this, "processDomainServerList");
|
||||||
packetReceiver.registerListener(PacketType::DomainServerAddedNode, this, "processDomainServerAddedNode");
|
|
||||||
packetReceiver.registerListener(PacketType::DomainServerPathResponse, this, "processDomainServerPathQueryResponse");
|
|
||||||
packetReceiver.registerListener(PacketType::Ping, this, "processPingPacket");
|
packetReceiver.registerListener(PacketType::Ping, this, "processPingPacket");
|
||||||
packetReceiver.registerListener(PacketType::PingReply, this, "processPingReplyPacket");
|
packetReceiver.registerListener(PacketType::PingReply, this, "processPingReplyPacket");
|
||||||
packetReceiver.registerListener(PacketType::ICEPing, this, "processICEPingPacket");
|
packetReceiver.registerListener(PacketType::ICEPing, this, "processICEPingPacket");
|
||||||
packetReceiver.registerListener(PacketType::ICEPingReply, this, "processICEPingReplyPacket");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
qint64 NodeList::sendStats(const QJsonObject& statsObject, const HifiSockAddr& destination) {
|
qint64 NodeList::sendStats(const QJsonObject& statsObject, const HifiSockAddr& destination) {
|
||||||
|
@ -190,25 +187,6 @@ void NodeList::processICEPingPacket(QSharedPointer<NLPacket> packet) {
|
||||||
sendPacket(std::move(replyPacket), packet->getSenderSockAddr());
|
sendPacket(std::move(replyPacket), packet->getSenderSockAddr());
|
||||||
}
|
}
|
||||||
|
|
||||||
void NodeList::processICEPingReplyPacket(QSharedPointer<NLPacket> packet) {
|
|
||||||
const HifiSockAddr& senderSockAddr = packet->getSenderSockAddr();
|
|
||||||
qCDebug(networking) << "Received reply from domain-server on" << senderSockAddr;
|
|
||||||
|
|
||||||
if (_domainHandler.getIP().isNull()) {
|
|
||||||
// for now we're unsafely assuming this came back from the domain
|
|
||||||
if (senderSockAddr == _domainHandler.getICEPeer().getLocalSocket()) {
|
|
||||||
qCDebug(networking) << "Connecting to domain using local socket";
|
|
||||||
_domainHandler.activateICELocalSocket();
|
|
||||||
} else if (senderSockAddr == _domainHandler.getICEPeer().getPublicSocket()) {
|
|
||||||
qCDebug(networking) << "Conecting to domain using public socket";
|
|
||||||
_domainHandler.activateICEPublicSocket();
|
|
||||||
} else {
|
|
||||||
qCDebug(networking) << "Reply does not match either local or public socket for domain. Will not connect.";
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void NodeList::reset() {
|
void NodeList::reset() {
|
||||||
LimitedNodeList::reset();
|
LimitedNodeList::reset();
|
||||||
|
|
||||||
|
|
|
@ -80,7 +80,6 @@ public slots:
|
||||||
void processPingReplyPacket(QSharedPointer<NLPacket> packet, SharedNodePointer sendingNode);
|
void processPingReplyPacket(QSharedPointer<NLPacket> packet, SharedNodePointer sendingNode);
|
||||||
|
|
||||||
void processICEPingPacket(QSharedPointer<NLPacket> packet);
|
void processICEPingPacket(QSharedPointer<NLPacket> packet);
|
||||||
void processICEPingReplyPacket(QSharedPointer<NLPacket> packet);
|
|
||||||
signals:
|
signals:
|
||||||
void limitOfSilentDomainCheckInsReached();
|
void limitOfSilentDomainCheckInsReached();
|
||||||
private slots:
|
private slots:
|
||||||
|
|
Loading…
Reference in a new issue