summaryrefslogtreecommitdiffstats
path: root/src/libs/engine/HTTPEngineReceiver.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-08-16 18:45:27 +0000
committerDavid Robillard <d@drobilla.net>2008-08-16 18:45:27 +0000
commit42936aa5d924ca89fe3d887fd0ffeb7a281b547e (patch)
tree0bc295b9f021bee109822782af4c15504b25efa4 /src/libs/engine/HTTPEngineReceiver.cpp
parent1116f096282e47c4f85c4681906bacf2516d5a01 (diff)
downloadingen-42936aa5d924ca89fe3d887fd0ffeb7a281b547e.tar.gz
ingen-42936aa5d924ca89fe3d887fd0ffeb7a281b547e.tar.bz2
ingen-42936aa5d924ca89fe3d887fd0ffeb7a281b547e.zip
Add missing Store.cpp.
More serialisation work. git-svn-id: http://svn.drobilla.net/lad/ingen@1402 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine/HTTPEngineReceiver.cpp')
-rw-r--r--src/libs/engine/HTTPEngineReceiver.cpp30
1 files changed, 27 insertions, 3 deletions
diff --git a/src/libs/engine/HTTPEngineReceiver.cpp b/src/libs/engine/HTTPEngineReceiver.cpp
index b9cd1d7b..7427f18d 100644
--- a/src/libs/engine/HTTPEngineReceiver.cpp
+++ b/src/libs/engine/HTTPEngineReceiver.cpp
@@ -17,6 +17,7 @@
#include <iostream>
#include <cstdlib>
+#include <cstdio>
#include <string>
#include "types.hpp"
#include <raul/SharedPtr.hpp>
@@ -55,7 +56,7 @@ HTTPEngineReceiver::HTTPEngineReceiver(Engine& engine, uint16_t port)
if (engine.world()->serialisation_module) {
if (!engine.world()->serialiser)
engine.world()->serialiser = SharedPtr<Serialiser>(
- Ingen::Serialisation::new_serialiser(engine.world()));
+ Ingen::Serialisation::new_serialiser(engine.world(), engine.engine_store()));
if (!engine.world()->loader)
engine.world()->loader = SharedPtr<Loader>(
@@ -129,9 +130,27 @@ HTTPEngineReceiver::message_callback(SoupServer* server, SoupMessage* msg, const
return;
}
+#if 0
+ SoupMessageHeaders* in_head = msg->request_headers;
+ const char* str = soup_message_headers_get(in_head, "Accept");
+ cout << "Accept: " << str << endl;
+#endif
+
// Serialise object
- string base_uri = string("ingen:").append(start->second->path());
- const string response = serialiser->to_string(start->second, base_uri, GraphObject::Variables());
+ const string response = serialiser->to_string(start->second, "http://example.org",
+ GraphObject::Variables());
+
+#if 0
+ FILE* xhtml_file = fopen("/home/dave/ingen_ui.xhtml", "r");
+ string response;
+ while (!feof(xhtml_file)) {
+ int c = fgetc(xhtml_file);
+ if (c != EOF)
+ response += (char)c;
+ }
+ fclose(xhtml_file);
+#endif
+
soup_message_set_status (msg, SOUP_STATUS_OK);
soup_message_set_response (msg, "text/plain", SOUP_MEMORY_COPY,
response.c_str(), response.length());
@@ -152,9 +171,14 @@ HTTPEngineReceiver::message_callback(SoupServer* server, SoupMessage* msg, const
soup_message_set_status (msg, SOUP_STATUS_INTERNAL_SERVER_ERROR);
return;
}
+
+ //cout << "POST: " << msg->request_body->data << endl;
// Load object
soup_message_set_status (msg, SOUP_STATUS_NOT_IMPLEMENTED);
+ } else if (msg->method == SOUP_METHOD_POST) {
+ //cout << "PUT: " << msg->request_body->data << endl;
+ soup_message_set_status (msg, SOUP_STATUS_NOT_IMPLEMENTED);
} else {
soup_message_set_status (msg, SOUP_STATUS_NOT_IMPLEMENTED);
}