18 #ifndef NAF_COREANDLER_FACTORY
19 #define NAF_COREANDLER_FACTORY
28 #include "Poco/Exception.h"
29 #include "Poco/Format.h"
30 #include <Poco/Net/HTTPRequestHandlerFactory.h>
31 #include <Poco/JSON/JSON.h>
32 #include <Poco/JSON/Array.h>
33 #include <Poco/JSON/Object.h>
34 #include <Poco/JSON/Parser.h>
35 #include <Poco/Dynamic/Var.h>
36 #include <Poco/Dynamic/Struct.h>
37 #include <Poco/StreamCopier.h>
38 #include "Poco/Data/Session.h"
39 #include "Poco/Data/MySQL/Connector.h"
40 #include <Poco/Data/MySQL/MySQLException.h>
41 #include <Poco/Data/Statement.h>
43 #include "tools/handler_connection.h"
44 #include "tools/sessions_manager.h"
45 #include "query/database_manager.h"
46 #include "tools/route.h"
47 #include "http/request.h"
48 #include "handlers/root_handler.h"
49 #include "handlers/null_handler.h"
50 #include "handlers/backend_handler.h"
51 #include "handlers/login_handler.h"
52 #include "handlers/websocket_handler.h"
53 #include "tools/output_logger.h"
56 using namespace Poco::Net;
57 using namespace Poco::JSON;
58 using namespace Poco::Data::Keywords;
64 struct HTTPRequestInfo;
72 HTTPRequestInfo(std::string uri, std::string method) : uri(uri), method(method){}
79 public HTTPRequestHandlerFactory
84 using Connections = std::map<std::string, Tools::HandlerConnection>;
89 Connections& get_connections()
91 auto& var = connections_;
94 FunctionHandlerCreator& get_handler_creator_()
96 auto& var = handler_creator_;
99 void set_handler_creator(FunctionHandlerCreator handler_creator){ handler_creator_ = handler_creator; }
101 virtual HTTPRequestHandler* createRequestHandler(
const HTTPServerRequest& request);
104 void ErrorResponse_(
const HTTPServerRequest& request, std::string error);
107 FunctionHandlerCreator handler_creator_;
108 Connections connections_;
Definition: handler_factory.h:80
Definition: root_handler.h:98
Definition: handler_factory.h:71