diff options
Diffstat (limited to 'PlexHTTPRequestHandler.h')
-rw-r--r-- | PlexHTTPRequestHandler.h | 63 |
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 |