mirror of
https://github.com/nasa/trick.git
synced 2024-12-18 20:57:55 +00:00
parent
61a378553d
commit
2dd12fcbb6
@ -63,7 +63,7 @@ class MyCivetServer {
|
||||
void deleteWebSocketSession(struct mg_connection * nc);
|
||||
void installHTTPGEThandler(std::string handlerName, httpMethodHandler handler);
|
||||
void installWebSocketSessionMaker(std::string name, WebSocketSessionMaker maker);
|
||||
void handleWebSocketClientMessage(struct mg_connection *conn, const char* data);
|
||||
void handleWebSocketClientMessage(struct mg_connection *conn, const std::string& data);
|
||||
void handleHTTPGETrequest(struct mg_connection *conn, const struct mg_request_info* ri, std::string handlerName);
|
||||
|
||||
|
||||
|
@ -21,7 +21,7 @@ class WebSocketSession {
|
||||
*/
|
||||
virtual void marshallData()=0;
|
||||
virtual void sendMessage()=0;
|
||||
virtual int handleMessage(std::string)=0;
|
||||
virtual int handleMessage(const std::string&)=0;
|
||||
|
||||
struct mg_connection* connection; /* ** */
|
||||
};
|
||||
|
@ -36,7 +36,7 @@ void TimeSession::sendMessage() {
|
||||
mg_websocket_write(connection, MG_WEBSOCKET_OPCODE_TEXT, message, strlen(message));
|
||||
}
|
||||
|
||||
int TimeSession::handleMessage(std::string client_msg) {
|
||||
int TimeSession::handleMessage(const std::string& client_msg) {
|
||||
|
||||
if (client_msg.compare("GMT") == 0) {
|
||||
zone = TimeSession::GMT;
|
||||
|
@ -15,7 +15,7 @@ class TimeSession : public WebSocketSession {
|
||||
~TimeSession();
|
||||
void marshallData();
|
||||
void sendMessage();
|
||||
int handleMessage(std::string);
|
||||
int handleMessage(const std::string&);
|
||||
private:
|
||||
time_t now;
|
||||
Zone zone;
|
||||
|
@ -21,7 +21,7 @@ class VariableServerSession : public WebSocketSession {
|
||||
~VariableServerSession();
|
||||
void marshallData(); /* -- base */
|
||||
void sendMessage(); /* -- base */
|
||||
int handleMessage(std::string); /* -- base */
|
||||
int handleMessage(const std::string&); /* -- base */
|
||||
|
||||
void setTimeInterval(unsigned int milliseconds);
|
||||
void addVariable(char* vname);
|
||||
|
@ -371,7 +371,7 @@ int MyCivetServer::join() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
void MyCivetServer::handleWebSocketClientMessage(struct mg_connection *conn, const char* data) {
|
||||
void MyCivetServer::handleWebSocketClientMessage(struct mg_connection *conn, const std::string& data) {
|
||||
std::map<mg_connection*, WebSocketSession*>::iterator iter;
|
||||
iter = webSocketSessionMap.find(conn);
|
||||
if (iter != webSocketSessionMap.end()) {
|
||||
|
@ -73,7 +73,7 @@ void VariableServerSession::sendMessage() {
|
||||
}
|
||||
|
||||
// Base class virtual function.
|
||||
int VariableServerSession::handleMessage(std::string client_msg) {
|
||||
int VariableServerSession::handleMessage(const std::string& client_msg) {
|
||||
|
||||
int status = 0;
|
||||
std::vector<Member*> members = parseJSON(client_msg.c_str());
|
||||
|
@ -177,10 +177,12 @@ int ws_data_handler(struct mg_connection *conn, int bits,
|
||||
{
|
||||
int rvalue = 1;
|
||||
MyCivetServer* server = (MyCivetServer*) my_server;
|
||||
if (server->debug) { message_publish(MSG_INFO, "Trick Webserver: WEBSOCKET[%p] RECIEVED: \"%s\".\n", (void*)conn, data); }
|
||||
std::string msg(data, data_len);
|
||||
if (server->debug) { message_publish(MSG_INFO, "Trick Webserver: WEBSOCKET[%p] RECIEVED: \"%s\".\n", (void*)conn, msg.c_str()); }
|
||||
|
||||
if (data_len > 0) {
|
||||
server->handleWebSocketClientMessage(conn, data);
|
||||
std::string msg(data, data_len);
|
||||
server->handleWebSocketClientMessage(conn, msg);
|
||||
}
|
||||
return rvalue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user