diff options
| author | Comment <tim@gray.(none)> | 2013-02-13 17:11:43 +0000 |
|---|---|---|
| committer | Comment <tim@gray.(none)> | 2013-02-13 17:11:43 +0000 |
| commit | 95bb2236ac69b3ae54bb84f91a58a89491b94240 (patch) | |
| tree | c29070fa03b8f3a430081b3dcc6ba0ce75b7bc02 /rotord/rotord.h | |
initial commit
Diffstat (limited to 'rotord/rotord.h')
| -rw-r--r-- | rotord/rotord.h | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/rotord/rotord.h b/rotord/rotord.h new file mode 100644 index 0000000..c5f632b --- /dev/null +++ b/rotord/rotord.h @@ -0,0 +1,77 @@ +#include "Poco/Net/HTTPServer.h" +#include "Poco/Net/HTTPRequestHandler.h" +#include "Poco/Net/HTTPRequestHandlerFactory.h" +#include "Poco/Net/HTTPServerParams.h" +#include "Poco/Net/HTTPServerRequest.h" +#include "Poco/Net/HTTPServerResponse.h" +#include "Poco/Net/HTTPServerParams.h" +#include "Poco/Net/ServerSocket.h" +#include "Poco/Timestamp.h" +#include "Poco/DateTimeFormatter.h" +#include "Poco/DateTimeFormat.h" +#include "Poco/Exception.h" +#include "Poco/ThreadPool.h" +#include "Poco/Util/ServerApplication.h" +#include "Poco/Util/Option.h" +#include "Poco/Util/OptionSet.h" +#include "Poco/Util/HelpFormatter.h" +#include <iostream> + +#include "Poco/URI.h" + +using Poco::Net::ServerSocket; +using Poco::Net::HTTPRequestHandler; +using Poco::Net::HTTPRequestHandlerFactory; +using Poco::Net::HTTPServer; +using Poco::Net::HTTPServerRequest; +using Poco::Net::HTTPServerResponse; +using Poco::Net::HTTPServerParams; +using Poco::Timestamp; +using Poco::DateTimeFormatter; +using Poco::DateTimeFormat; +using Poco::ThreadPool; +using Poco::Util::ServerApplication; +using Poco::Util::Application; +using Poco::Util::Option; +using Poco::Util::OptionSet; +using Poco::Util::OptionCallback; +using Poco::Util::HelpFormatter; + +class RotorRequestHandler: public HTTPRequestHandler +{ + public: + RotorRequestHandler(const std::string& format); + void handleRequest(HTTPServerRequest& request,HTTPServerResponse& response); + private: + std::string _format; +}; + +class RotorRequestHandlerFactory: public HTTPRequestHandlerFactory +{ + public: + RotorRequestHandlerFactory(const std::string& format); + HTTPRequestHandler* createRequestHandler(const HTTPServerRequest& request); + private: + std::string _format; +}; + +class RotorServer: public Poco::Util::ServerApplication +{ + public: + RotorServer(); + ~RotorServer(); + protected: + void initialize(Application& self); + void uninitialize(); + void defineOptions(OptionSet& options); + void handleHelp(const std::string& name, const std::string& value); + int main(const std::vector<std::string>& args); + private: + bool _helpRequested; +}; + +int main(int argc, char** argv) +{ + RotorServer app; + return app.run(argc, argv); +}
\ No newline at end of file |
