summaryrefslogtreecommitdiffstats
path: root/src/uscxml/server/InterpreterServlet.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/server/InterpreterServlet.h')
-rw-r--r--src/uscxml/server/InterpreterServlet.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/uscxml/server/InterpreterServlet.h b/src/uscxml/server/InterpreterServlet.h
index 72f2f67..18e1d28 100644
--- a/src/uscxml/server/InterpreterServlet.h
+++ b/src/uscxml/server/InterpreterServlet.h
@@ -2,15 +2,30 @@
#define INTERPRETERSERVLET_H_XQLWNMH4
#include "HTTPServer.h"
+#include "uscxml/Factory.h"
namespace uscxml {
class Interpreter;
-class InterpreterServlet : public HTTPServlet {
+class InterpreterServlet : public HTTPServlet, public IOProcessorImpl {
public:
+ InterpreterServlet() {};
InterpreterServlet(Interpreter* interpreter);
virtual ~InterpreterServlet() {}
+
+ virtual boost::shared_ptr<IOProcessorImpl> create(Interpreter* interpreter);
+
+ virtual std::set<std::string> getNames() {
+ std::set<std::string> names;
+ names.insert("http");
+ names.insert("http://www.w3.org/TR/scxml/#HTTPEventProcessor");
+ return names;
+ }
+
+ Data getDataModelVariables();
+ virtual void send(const SendRequest& req);
+
virtual void httpRecvRequest(const HTTPServer::Request& req);
std::string getPath() {
@@ -26,6 +41,7 @@ public:
return false;
}
+
std::map<std::string, HTTPServer::Request>& getRequests() {
return _requests;
}