MurataTypeYD_RPC_Sample fixed version for 050314

Dependencies:   PowerControl SNICInterface_mod2 mbed-rtos mbed

Fork of HTTPClient_WiFi_HelloWorld by KDDI Fx0 hackathon

Revision:
6:6c49fdc29825
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HTTPServer.h	Thu Mar 12 12:27:31 2015 +0000
@@ -0,0 +1,42 @@
+#ifndef HTTP_SERVER
+#define HTTP_SERVER
+
+#include <map>
+#include "mbed.h"
+#include "SNIC_WifiInterface.h"
+#include "TCPSocketServer.h"
+#include "TCPSocketConnection.h"
+#include "RequestHandler.h"
+#include "RPCObject.h"
+
+#define HTTP_REPLY_MAX_STRING 1024
+
+enum
+{
+    HTTP_200_OK         = 200,
+    HTTP_400_BADREQUEST = 400,
+    HTTP_404_NOTFOUND   = 404
+};
+
+
+class HTTPServer
+{
+    public :
+        HTTPServer();
+        virtual ~HTTPServer();
+        bool init(int port);
+        void run();
+        void add_request_handler(char *name, RequestHandler* handler);
+        
+    private :
+        void handle_request(char* buffer);
+        void create_response(char* buffer);
+        TCPSocketServer socketserver;
+        std::map<char*, RequestHandler*, bool(*)(char*, char*)> handlers;
+        RPCObject object;
+        char reply[HTTP_REPLY_MAX_STRING];
+        int response_code;
+};
+
+#endif
+