2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
42#ifndef EXPRESS_DISPATCHER_ROUTERDISPATCHER_H
43#define EXPRESS_DISPATCHER_ROUTERDISPATCHER_H
45#include "express/Dispatcher.h"
49#ifndef DOXYGEN_SHOULD_SKIP_THIS
66 std::list<std::string>
getRoutes(
const std::string& parentMountPath,
const MountPoint& mountPoint)
const;
76 std::list<std::string>
77 getRoutes(
const std::string& parentMountPath,
const MountPoint& mountPoint,
bool strictRouting)
const override;
const std::string & getConnectionName() const
SocketConnection * getSocketConnection() const
const std::shared_ptr< Request > & getRequest()
bool setStrictRouting(bool strictRouting)
bool getStrictRouting() const
bool getCaseInsensitiveRouting() const
const std::shared_ptr< Response > & getResponse()
web::http::CiStringMap< std::string > queries
web::http::server::SocketContext * getSocketContext() const
bool dispatch(Controller &controller, const std::string &parentMountPath)
std::list< std::string > getRoute(const std::string &parentMountPath, bool strictRouting) const
bool setCaseInsensitiveRouting(bool caseInsensitiveRouting)
std::list< std::string > getRoutes(const std::string &parentMountPath, const MountPoint &mountPoint, bool strictRouting) const override
bool getCaseInsensitiveRouting() const
bool dispatch(express::Controller &controller, const std::string &parentMountPath, const express::MountPoint &mountPoint) override
std::list< std::string > getRoutes(const std::string &parentMountPath, const MountPoint &mountPoint) const
bool setStrictRouting(bool strictRouting)
std::list< express::Route > & getRoutes()
std::vector< std::string > names
std::list< express::Route > routes
bool caseInsensitiveRouting
bool getStrictRouting() const
bool matchAndFillParams(const std::regex &rx, const std::vector< std::string > &names, std::string_view reqPath, RequestLike &req)
bool querySupersetMatches(const std::unordered_map< std::string, std::string > &rq, const std::unordered_map< std::string, std::string > &need)
void splitPathAndQuery(std::string_view url, std::string_view &path, std::string_view &query)
bool boundaryPrefix(std::string_view path, std::string_view base, bool caseInsensitive)
std::pair< std::regex, std::vector< std::string > > compileParamRegex(std::string_view mountPath, bool isPrefix, bool strictRouting, bool caseInsensitive)
std::unordered_map< std::string, std::string > parseQuery(std::string_view qs)
std::string_view trimOneTrailingSlash(std::string_view s)
std::string relativeMountPath