Upper Version Add PUT method Delete POST method

Dependencies:   Adafruit_GFX MbedJSONValue_v102 WIZnetInterface mbed

Fork of WIZwiki-REST-io_v102 by Lawrence Lee

HTTPServer.h

Committer:
joon874
Date:
2016-03-02
Revision:
0:5886f525a4ad
Child:
1:728e5b5c8dae

File content as of revision 0:5886f525a4ad:

#ifndef HTTP_SERVER
#define HTTP_SERVER

#include <map>

#include "mbed.h"
#include <string>
#include "RequestHandler.h"
#include "EthernetInterface.h"

typedef enum _HTTP_RESULT
{
    HTTP_INVALID_URI    = -3,
    HTTP_INVALID_DATA   = -2,
    HTTP_INVALID_HANDLE = -1,
    HTTP_SUCCESS        =  1
}HTTP_RESULT;


static  char HTTPBUF[1024] ={0,};
static  char rest_result[1024] = {0,};

class HTTPServer
{
    public :
    
        HTTPServer();
        virtual ~HTTPServer();
        
        bool init(int port);

        void run();
        
        void add_request_handler(char *name, RequestHandler* handler);
        
    private :

        HTTP_RESULT handle_request(char *buffer);
        
        TCPSocketServer socket;
        std::map<char*, RequestHandler*, bool(*)(char*, char*)> handlers;
                //char rest_result[2048];

};

#endif