diff Plugins/Engine/PluginsManager.cpp @ 897:bafc9d592632 plugins

REST callbacks are working
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 17 Jun 2014 17:43:39 +0200
parents c4053ac5db04
children 7000fc86fe62
line wrap: on
line diff
--- a/Plugins/Engine/PluginsManager.cpp	Tue Jun 17 09:57:02 2014 +0200
+++ b/Plugins/Engine/PluginsManager.cpp	Tue Jun 17 17:43:39 2014 +0200
@@ -33,6 +33,7 @@
 #include "PluginsManager.h"
 
 #include "../../Core/Toolbox.h"
+#include "../../Core/HttpServer/HttpOutput.h"
 
 #include <glog/logging.h>
 #include <cassert>
@@ -150,13 +151,9 @@
                                             const char* pathRegularExpression, 
                                             OrthancPluginRestCallback callback)
   {
-    // TODO
     LOG(INFO) << "Plugin has registered a REST callback on: " << pathRegularExpression;
-
     PluginsManager* manager = reinterpret_cast<PluginsManager*>(context->pimpl);
-    manager->restCallbacks_.push_back(callback);
-
-    callback(NULL, OrthancPluginHttpMethod_Get, "/hello/world", NULL, 0);
+    manager->restCallbacks_.push_back(std::make_pair(pathRegularExpression, callback));
   }
 
 
@@ -165,7 +162,8 @@
                            uint32_t answerSize,
                            const char* mimeType)
   {
-    std::cout << "MIME " << mimeType << ": " << answer << std::endl;
+    HttpOutput* translatedOutput = reinterpret_cast<HttpOutput*>(output);
+    translatedOutput->AnswerBufferWithContentType(answer, answerSize, mimeType);
   }