diff options
author | David Robillard <d@drobilla.net> | 2008-08-16 18:45:27 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-08-16 18:45:27 +0000 |
commit | 42936aa5d924ca89fe3d887fd0ffeb7a281b547e (patch) | |
tree | 0bc295b9f021bee109822782af4c15504b25efa4 /src/libs/engine/HTTPEngineReceiver.cpp | |
parent | 1116f096282e47c4f85c4681906bacf2516d5a01 (diff) | |
download | ingen-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.cpp | 30 |
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); } |