simplify bindWebsocket
This commit is contained in:
parent
28ae70ed20
commit
75011d0b4e
@ -26,42 +26,41 @@ namespace ix
|
|||||||
|
|
||||||
void WebSocketMessageQueue::bindWebsocket(WebSocket * websocket)
|
void WebSocketMessageQueue::bindWebsocket(WebSocket * websocket)
|
||||||
{
|
{
|
||||||
if (_websocket != websocket)
|
if (_websocket == websocket) return;
|
||||||
|
|
||||||
|
// unbind old
|
||||||
|
if (_websocket)
|
||||||
{
|
{
|
||||||
// unbind old
|
_websocket->setOnMessageCallback(nullptr);
|
||||||
if (_websocket)
|
}
|
||||||
{
|
|
||||||
_websocket->setOnMessageCallback(nullptr);
|
|
||||||
}
|
|
||||||
|
|
||||||
_websocket = websocket;
|
_websocket = websocket;
|
||||||
|
|
||||||
// bind new
|
// bind new
|
||||||
if (_websocket)
|
if (_websocket)
|
||||||
|
{
|
||||||
|
_websocket->setOnMessageCallback([this](
|
||||||
|
WebSocketMessageType type,
|
||||||
|
const std::string& str,
|
||||||
|
size_t wireSize,
|
||||||
|
const WebSocketErrorInfo& errorInfo,
|
||||||
|
const WebSocketOpenInfo& openInfo,
|
||||||
|
const WebSocketCloseInfo& closeInfo)
|
||||||
{
|
{
|
||||||
_websocket->setOnMessageCallback([this](
|
MessageDataPtr message(new Message());
|
||||||
WebSocketMessageType type,
|
|
||||||
const std::string& str,
|
message->type = type;
|
||||||
size_t wireSize,
|
message->str = str;
|
||||||
const WebSocketErrorInfo& errorInfo,
|
message->wireSize = wireSize;
|
||||||
const WebSocketOpenInfo& openInfo,
|
message->errorInfo = errorInfo;
|
||||||
const WebSocketCloseInfo& closeInfo)
|
message->openInfo = openInfo;
|
||||||
|
message->closeInfo = closeInfo;
|
||||||
|
|
||||||
{
|
{
|
||||||
MessageDataPtr message(new Message());
|
std::lock_guard<std::mutex> lock(_messagesMutex);
|
||||||
|
_messages.emplace_back(std::move(message));
|
||||||
message->type = type;
|
}
|
||||||
message->str = str;
|
});
|
||||||
message->wireSize = wireSize;
|
|
||||||
message->errorInfo = errorInfo;
|
|
||||||
message->openInfo = openInfo;
|
|
||||||
message->closeInfo = closeInfo;
|
|
||||||
|
|
||||||
{
|
|
||||||
std::lock_guard<std::mutex> lock(_messagesMutex);
|
|
||||||
_messages.emplace_back(std::move(message));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user