diff options
author | JackLivio <jack@livio.io> | 2018-02-02 10:54:09 -0500 |
---|---|---|
committer | JackLivio <jack@livio.io> | 2018-02-02 10:54:09 -0500 |
commit | a2f218596ab897d04b37a9fa0052299c4dba2caa (patch) | |
tree | 571fd2436ed13f85c7960def942435ed205e9d9f | |
parent | 585b15c23ed20b90f2d92d68b0b303825c06ee0a (diff) | |
download | sdl_core-a2f218596ab897d04b37a9fa0052299c4dba2caa.tar.gz |
Handle error processing and fix shutdown issuefeature/boost_websocket_message_broker
-rw-r--r-- | src/components/hmi_message_handler/src/mb_controller.cc | 13 | ||||
-rw-r--r-- | src/components/hmi_message_handler/src/websocket_session.cc | 4 |
2 files changed, 8 insertions, 9 deletions
diff --git a/src/components/hmi_message_handler/src/mb_controller.cc b/src/components/hmi_message_handler/src/mb_controller.cc index ef7b28cb55..d7fb432df2 100644 --- a/src/components/hmi_message_handler/src/mb_controller.cc +++ b/src/components/hmi_message_handler/src/mb_controller.cc @@ -382,7 +382,7 @@ namespace NsMessageBroker err["code"] = CONTROLLER_EXISTS; err["message"] = "Controller has been already registered."; error["error"] = err; - //process error + ws_session->sendJsonMessage(error); } } else { Json::Value error, err; @@ -391,8 +391,7 @@ namespace NsMessageBroker err["code"] = INVALID_REQUEST; err["message"] = "Wrong method parameter."; error["error"] = err; - //ToDO send error - + ws_session->sendJsonMessage(error); } } else if (methodName == "subscribeTo") { Json::Value params = message["params"]; @@ -411,7 +410,7 @@ namespace NsMessageBroker err["code"] = CONTROLLER_EXISTS; err["message"] = "Subscribe has been already registered."; error["error"] = err; - //send error for already subscribed + ws_session->sendJsonMessage(error); } } else { Json::Value error, err; @@ -420,7 +419,7 @@ namespace NsMessageBroker err["code"] = INVALID_REQUEST; err["message"] = "Wrong method parameter."; error["error"] = err; - //ToDO send error + ws_session->sendJsonMessage(error); } } else if (methodName == "unregisterComponent" ) { @@ -440,7 +439,7 @@ namespace NsMessageBroker err["code"] = INVALID_REQUEST; err["message"] = "Wrong method parameter."; error["error"] = err; - //processError(new CMessage(pMessage->getSenderFd(), error)); + ws_session->sendJsonMessage(error); } } else if (methodName == "unsubscribeFrom") { Json::Value params = message["params"]; @@ -459,7 +458,7 @@ namespace NsMessageBroker err["code"] = INVALID_REQUEST; err["message"] = "Wrong method parameter."; error["error"] = err; - //processError(new CMessage(pMessage->getSenderFd(), error)); + ws_session->sendJsonMessage(error); } } else { diff --git a/src/components/hmi_message_handler/src/websocket_session.cc b/src/components/hmi_message_handler/src/websocket_session.cc index afd8ce5994..3484278c1a 100644 --- a/src/components/hmi_message_handler/src/websocket_session.cc +++ b/src/components/hmi_message_handler/src/websocket_session.cc @@ -186,11 +186,10 @@ namespace NsMessageBroker controller_->pushRequest(message, this); controller_->processRequest(message); } - - } } else { DBG_MSG_ERROR(("Message contains wrong data!\n")); + sendJsonMessage(error); } } @@ -330,5 +329,6 @@ namespace NsMessageBroker void WebsocketSession::LoopThreadDelegate::SetShutdown(){ shutdown_ = true; + message_queue_.Shutdown(); } }
\ No newline at end of file |