From a3533b0b7df4cb93e7bfbc50a295bf607d7348ff Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Tue, 8 Mar 2016 10:21:29 -0800 Subject: [PATCH] repairs for moved packet handling in AssetServer --- assignment-client/src/assets/AssetServer.cpp | 33 +++++++++----------- assignment-client/src/assets/AssetServer.h | 7 ++--- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/assignment-client/src/assets/AssetServer.cpp b/assignment-client/src/assets/AssetServer.cpp index dc4e6c90d5..2fbadf56d1 100644 --- a/assignment-client/src/assets/AssetServer.cpp +++ b/assignment-client/src/assets/AssetServer.cpp @@ -186,15 +186,15 @@ void AssetServer::handleAssetMappingOperation(QSharedPointer me switch (operationType) { case AssetMappingOperationType::Get: { - handleGetMappingOperation(*message, senderNode, std::move(replyPacket)); + handleGetMappingOperation(*message, senderNode, *replyPacket); break; } case AssetMappingOperationType::Set: { - handleSetMappingOperation(*message, senderNode, std::move(replyPacket)); + handleSetMappingOperation(*message, senderNode, *replyPacket); break; } case AssetMappingOperationType::Delete: { - handleDeleteMappingOperation(*message, senderNode, std::move(replyPacket)); + handleDeleteMappingOperation(*message, senderNode, *replyPacket); break; } } @@ -203,51 +203,48 @@ void AssetServer::handleAssetMappingOperation(QSharedPointer me nodeList->sendPacket(std::move(replyPacket), *senderNode); } -void AssetServer::handleGetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, - std::unique_ptr replyPacket) { +void AssetServer::handleGetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, NLPacket& replyPacket) { QString assetPath = message.readString(); auto it = _fileMapping.find(assetPath); if (it != _fileMapping.end()) { auto assetHash = it->toString(); qDebug() << "Found mapping for: " << assetPath << "=>" << assetHash; - replyPacket->writePrimitive(AssetServerError::NoError); - replyPacket->write(QByteArray::fromHex(assetHash.toLocal8Bit())); + replyPacket.writePrimitive(AssetServerError::NoError); + replyPacket.write(QByteArray::fromHex(assetHash.toLocal8Bit())); } else { qDebug() << "Mapping not found for: " << assetPath; - replyPacket->writePrimitive(AssetServerError::AssetNotFound); + replyPacket.writePrimitive(AssetServerError::AssetNotFound); } } -void AssetServer::handleSetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, - std::unique_ptr replyPacket) { +void AssetServer::handleSetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, NLPacket& replyPacket) { if (senderNode->getCanRez()) { QString assetPath = message.readString(); auto assetHash = message.read(SHA256_HASH_LENGTH).toHex(); if (setMapping(assetPath, assetHash)) { - replyPacket->writePrimitive(AssetServerError::NoError); + replyPacket.writePrimitive(AssetServerError::NoError); } else { - replyPacket->writePrimitive(AssetServerError::MappingOperationFailed); + replyPacket.writePrimitive(AssetServerError::MappingOperationFailed); } } else { - replyPacket->writePrimitive(AssetServerError::PermissionDenied); + replyPacket.writePrimitive(AssetServerError::PermissionDenied); } } -void AssetServer::handleDeleteMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, - std::unique_ptr replyPacket) { +void AssetServer::handleDeleteMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, NLPacket& replyPacket) { if (senderNode->getCanRez()) { QString assetPath = message.readString(); if (deleteMapping(assetPath)) { - replyPacket->writePrimitive(AssetServerError::NoError); + replyPacket.writePrimitive(AssetServerError::NoError); } else { - replyPacket->writePrimitive(AssetServerError::MappingOperationFailed); + replyPacket.writePrimitive(AssetServerError::MappingOperationFailed); } } else { - replyPacket->writePrimitive(AssetServerError::PermissionDenied); + replyPacket.writePrimitive(AssetServerError::PermissionDenied); } } diff --git a/assignment-client/src/assets/AssetServer.h b/assignment-client/src/assets/AssetServer.h index a15adc6f60..871898505f 100644 --- a/assignment-client/src/assets/AssetServer.h +++ b/assignment-client/src/assets/AssetServer.h @@ -41,10 +41,9 @@ private slots: private: using Mapping = QVariantHash; - void handleGetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, std::unique_ptr replyPacket); - void handleSetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, std::unique_ptr replyPacket); - void handleDeleteMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, - std::unique_ptr replyPacket); + void handleGetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, NLPacket& replyPacket); + void handleSetMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, NLPacket& replyPacket); + void handleDeleteMappingOperation(ReceivedMessage& message, SharedNodePointer senderNode, NLPacket& replyPacket); // Mapping file operations must be called from main assignment thread only void loadMappingFromFile();