add MessageDispatcher
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
#include <memory>
|
||||
|
||||
#include <sp/extensions/Extensions.h>
|
||||
#include <sp/default/DefaultPacketDispatcher.h>
|
||||
|
||||
class KeepAliveHandler : public sp::PacketHandler {
|
||||
void Handle(const KeepAlivePacket& packet) {
|
||||
@@ -24,8 +25,8 @@ int main() {
|
||||
|
||||
sp::PacketMessage* msg = upgradeTower.get();
|
||||
|
||||
KeepAliveHandler handler;
|
||||
msg->Dispatch(handler);
|
||||
auto handler = std::make_shared<KeepAliveHandler>();
|
||||
msg->Dispatch(*handler);
|
||||
|
||||
sp::DataBuffer buffer;
|
||||
msg->Write(buffer);
|
||||
@@ -45,7 +46,13 @@ int main() {
|
||||
return 1;
|
||||
}
|
||||
std::cout << (unsigned)packet->GetId() << std::endl;
|
||||
packet->Dispatch(handler);
|
||||
packet->Dispatch(*handler);
|
||||
|
||||
sp::PacketDispatcher dispatcher;
|
||||
dispatcher.RegisterHandler(PacketId::KeepAlive, handler);
|
||||
dispatcher.Dispatch(*packet);
|
||||
dispatcher.UnregisterHandler(PacketId::KeepAlive, handler);
|
||||
dispatcher.UnregisterHandler(handler);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user