summaryrefslogtreecommitdiff
path: root/PlexHTTPRequestHandler.h
diff options
context:
space:
mode:
authorchriszero <zerov83@gmail.com>2014-11-15 19:43:07 +0100
committerchriszero <zerov83@gmail.com>2014-11-15 19:43:07 +0100
commit23f9f7712bfa33b5a488a447a6fabe6035cc3240 (patch)
tree06bbe8e0bc52496c5ad3c41accc7524aa597e670 /PlexHTTPRequestHandler.h
parenta40adaf76fb1267d38b4c5e6386933ddb2d0d328 (diff)
downloadvdr-plugin-plex-23f9f7712bfa33b5a488a447a6fabe6035cc3240.tar.gz
vdr-plugin-plex-23f9f7712bfa33b5a488a447a6fabe6035cc3240.tar.bz2
initial commit
Diffstat (limited to 'PlexHTTPRequestHandler.h')
-rw-r--r--PlexHTTPRequestHandler.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/PlexHTTPRequestHandler.h b/PlexHTTPRequestHandler.h
new file mode 100644
index 0000000..52837fe
--- /dev/null
+++ b/PlexHTTPRequestHandler.h
@@ -0,0 +1,63 @@
+#ifndef PLEXHTTPREQUSTHANDLER_H
+#define PLEXHTTPREQUSTHANDLER_H
+
+#include <Poco/Net/HTTPRequestHandler.h> // Base class: Poco::Net::HTTPRequestHandler
+#include <Poco/Net/HTTPServerRequest.h>
+#include <Poco/Net/HTTPServerResponse.h>
+#include <Poco/Net/MessageHeader.h>
+#include <Poco/URI.h>
+#include <Poco/StringTokenizer.h>
+
+#include <iostream>
+#include <sstream>
+
+#include "plex.h"
+#include "Config.h"
+#include "SubscriptionManager.h"
+#include "Plexservice.h"
+#include "MediaContainer.h"
+#include "Directory.h"
+#include "PVideo.h"
+#include "Media.h"
+
+#include "plexgdm.h"
+
+
+
+namespace plexclient
+{
+
+class PlexHTTPRequestHandler : public Poco::Net::HTTPRequestHandler
+{
+public:
+ virtual void handleRequest(Poco::Net::HTTPServerRequest& request, Poco::Net::HTTPServerResponse& response);
+
+protected:
+ std::string GetOKMsg();
+ void AddHeaders(Poco::Net::HTTPServerResponse& response, Poco::Net::HTTPServerRequest& request);
+ std::map<std::string, std::string> ParseQuery(std::string query);
+};
+
+class SubscribeRequestHandler : public PlexHTTPRequestHandler
+{
+public:
+ virtual void handleRequest(Poco::Net::HTTPServerRequest& request, Poco::Net::HTTPServerResponse& response);
+};
+
+class ResourceRequestHandler : public PlexHTTPRequestHandler
+{
+public:
+ virtual void handleRequest(Poco::Net::HTTPServerRequest& request, Poco::Net::HTTPServerResponse& response);
+};
+
+class PlayerRequestHandler : public PlexHTTPRequestHandler
+{
+public:
+ virtual void handleRequest(Poco::Net::HTTPServerRequest& request, Poco::Net::HTTPServerResponse& response);
+};
+
+
+}
+
+
+#endif // PLEXHTTPREQUSTHANDLER_H