1
0
mirror of https://gitee.com/drabel/LibQQt.git synced 2025-01-04 10:18:44 +08:00
LibQQt/demo/QQtServerCreator/AppRoot/templete/qqtuserserverprotocol.cpp

40 lines
1.2 KiB
C++
Raw Normal View History

2018-04-29 20:05:46 +08:00
#include "qqtuserserverprotocol.h"
QDebug& operator << ( QDebug& dbg, const QQtUserServerMessage& msg )
{
//这里打印一下,报文里面到底有什么信息,
//一般到这里的都是被解析好的message。
dbg.nospace() << "{" << hex << msg.size() << "}";
return dbg.space();
}
QQtTcpServer* QQtUserServerInstance ( QQtProtocolManager*& protocolManager, QObject* parent )
{
static QQtProtocolManager* m0 = 0;
if ( !m0 )
{
//创建Protocol管理者
m0 = new QQtProtocolManager ( parent );
//注册我实现的Protocol
m0->registerProtocol<QQtUserServerProtocol> ( );
//初始化Protocol管理者完成。
}
protocolManager = m0;
static QQtTcpServer* s0 = 0;
if ( !s0 )
{
//新建服务器
s0 = new QQtTcpServer ( parent );
//安装协议管理者
s0->installProtocolManager ( m0 );
//开始监听
s0->listen ( QHostAddress::Any, 8001 );
//服务器初始化完成。
}
//等待客户端发消息过来Protocol就处理了去业务层看看。
return s0;
}