Simple WebSocket server library.

Dependents:   WebSocketServerTest

WebSocketConnection.h

Committer:
flatbird
Date:
2015-04-06
Revision:
2:db41b4e0d64b
Parent:
0:a816c25e83ed

File content as of revision 2:db41b4e0d64b:

#ifndef _WEB_SOCKET_CONNECTION_H_
#define _WEB_SOCKET_CONNECTION_H_

#include "TCPSocketServer.h"
#include "WebSocketHandler.h"
#include <string>
#include <map>

class WebSocketServer;

class WebSocketConnection
{
public:
    WebSocketConnection(WebSocketServer* server);
    virtual ~WebSocketConnection();

    void run();
    TCPSocketConnection& getTCPSocketConnection() { return mConnection; }

private:
    bool handleHTTP(char* buf, int size);
    bool handleWebSocket(char* buf, int size);
    bool sendUpgradeResponse(char* key);

    WebSocketServer* mServer;
    TCPSocketConnection mConnection;
    WebSocketHandler* mHandler;
    bool mPrevFin;
};

#endif