diff options
author | Mateusz Piekos <mateuszpiekos@gmail.com> | 2012-07-26 15:46:45 (GMT) |
---|---|---|
committer | Mateusz Piekos <mateuszpiekos@gmail.com> | 2012-07-26 15:46:45 (GMT) |
commit | 2e9ba0fb5a68abd8fa44d9996ea321a77876af14 (patch) | |
tree | 23a1bdf024045ad619af906bf2438dd05fa3c8fe /Swiften/Whiteboard/OutgoingWhiteboardSession.cpp | |
parent | 833e544490a0e3ff5eeebe44fae2b9a8f98d4a78 (diff) | |
download | swift-contrib-2e9ba0fb5a68abd8fa44d9996ea321a77876af14.zip swift-contrib-2e9ba0fb5a68abd8fa44d9996ea321a77876af14.tar.bz2 |
Improved handling of operations IDs and transformations
Diffstat (limited to 'Swiften/Whiteboard/OutgoingWhiteboardSession.cpp')
-rw-r--r-- | Swiften/Whiteboard/OutgoingWhiteboardSession.cpp | 37 |
1 files changed, 35 insertions, 2 deletions
diff --git a/Swiften/Whiteboard/OutgoingWhiteboardSession.cpp b/Swiften/Whiteboard/OutgoingWhiteboardSession.cpp index 0c7bc42..ae07822 100644 --- a/Swiften/Whiteboard/OutgoingWhiteboardSession.cpp +++ b/Swiften/Whiteboard/OutgoingWhiteboardSession.cpp @@ -10,6 +10,10 @@ #include <boost/bind.hpp> #include <Swiften/Elements/WhiteboardPayload.h> +#include <Swiften/Whiteboard/Operations/WhiteboardInsertOperation.h> +#include <Swiften/Whiteboard/Operations/WhiteboardUpdateOperation.h> +#include <Swiften/Whiteboard/Operations/WhiteboardDeleteOperation.h> + namespace Swift { OutgoingWhiteboardSession::OutgoingWhiteboardSession(const JID& jid, IQRouter* router) : WhiteboardSession(jid, router) { } @@ -36,11 +40,40 @@ namespace Swift { void OutgoingWhiteboardSession::handleIncomingOperation(WhiteboardOperation::ref operation) { // std::cout << "incoming pos: " << operation->getPos() << std::endl; +// client.print(); + WhiteboardClient::Result pairResult = client.handleServerOperationReceived(operation); if (pairResult.client) { +/* WhiteboardInsertOperation::ref insertOp = boost::dynamic_pointer_cast<WhiteboardInsertOperation>(operation); + if (insertOp) { + std::cout << "iin1: " << insertOp->getID() << " " << insertOp->getPos() << " " << insertOp->getParentID() << std::endl; + } + + WhiteboardUpdateOperation::ref updateOp = boost::dynamic_pointer_cast<WhiteboardUpdateOperation>(operation); + if (updateOp) { + std::cout << "uin1: " << updateOp->getID() << " " << updateOp->getPos() << " " << updateOp->getParentID() << std::endl; + } + + WhiteboardDeleteOperation::ref deleteOp = boost::dynamic_pointer_cast<WhiteboardDeleteOperation>(operation); + if (deleteOp) { + std::cout << "din1: " << deleteOp->getID() << " " << deleteOp->getPos() << " " << deleteOp->getParentID() << std::endl; + } + + insertOp = boost::dynamic_pointer_cast<WhiteboardInsertOperation>(pairResult.client); + if (insertOp) { + std::cout << "iin1: " << insertOp->getID() << " " << insertOp->getPos() << " " << insertOp->getParentID() << std::endl; + } + + updateOp = boost::dynamic_pointer_cast<WhiteboardUpdateOperation>(pairResult.client); + if (updateOp) { + std::cout << "uin1: " << updateOp->getID() << " " << updateOp->getPos() << " " << updateOp->getParentID() << std::endl; + } + + deleteOp = boost::dynamic_pointer_cast<WhiteboardDeleteOperation>(pairResult.client); + if (deleteOp) { + std::cout << "din1: " << deleteOp->getID() << " " << deleteOp->getPos() << " " << deleteOp->getParentID() << std::endl; + }*/ onOperationReceived(pairResult.client); - //std::cout << "in1: " << operation->getID() << " " << operation->getPos() << " " << operation->getParentID() << std::endl; - //std::cout << "in2: " << pairResult.client->getID() << " " << pairResult.client->getPos() << " " << pairResult.client->getParentID() << std::endl; } if (pairResult.server) { |