Simple WebSocket server library.

Dependents:   WebSocketServerTest

Committer:
flatbird
Date:
Mon Apr 06 12:55:41 2015 +0000
Revision:
2:db41b4e0d64b
Parent:
0:a816c25e83ed
add LICENSE.txt (MIT License)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
flatbird 0:a816c25e83ed 1 #ifndef _WEB_SOCKET_SERVER_H_
flatbird 0:a816c25e83ed 2 #define _WEB_SOCKET_SERVER_H_
flatbird 0:a816c25e83ed 3
flatbird 0:a816c25e83ed 4 #include "TCPSocketServer.h"
flatbird 0:a816c25e83ed 5 #include "WebSocketHandler.h"
flatbird 0:a816c25e83ed 6 #include <string>
flatbird 0:a816c25e83ed 7 #include <map>
flatbird 0:a816c25e83ed 8
flatbird 0:a816c25e83ed 9 class WebSocketServer
flatbird 0:a816c25e83ed 10 {
flatbird 0:a816c25e83ed 11 public:
flatbird 0:a816c25e83ed 12 WebSocketServer();
flatbird 0:a816c25e83ed 13 virtual ~WebSocketServer();
flatbird 0:a816c25e83ed 14
flatbird 0:a816c25e83ed 15 bool init(int port);
flatbird 0:a816c25e83ed 16 void run();
flatbird 0:a816c25e83ed 17 void setHandler(const char* path, WebSocketHandler* handler);
flatbird 0:a816c25e83ed 18 WebSocketHandler* getHandler(const char* path);
flatbird 0:a816c25e83ed 19
flatbird 0:a816c25e83ed 20 private:
flatbird 0:a816c25e83ed 21 typedef std::map<std::string, WebSocketHandler*> WebSocketHandlerContainer;
flatbird 0:a816c25e83ed 22
flatbird 0:a816c25e83ed 23 TCPSocketServer mTCPSocketServer;
flatbird 0:a816c25e83ed 24 WebSocketHandlerContainer mHandlers;
flatbird 0:a816c25e83ed 25 };
flatbird 0:a816c25e83ed 26
flatbird 0:a816c25e83ed 27 #endif