83 enum class StrictRouting { INHERIT, STRICT, LAX };
85 Route(
const std::string& method,
const std::string& relativeMountPath,
const std::shared_ptr<Dispatcher>& dispatcher);
87 Route& setStrictRouting(
bool strict =
true);
88 const StrictRouting& getStrictRouting()
const;
90 std::list<std::string> getRoute(
const std::string& parentMountPath,
bool strictRouting)
const;
95 bool dispatch(Controller& controller);
97 bool dispatch(Controller& controller,
const std::string& parentMountPath);
98 bool dispatchNext(Controller& controller,
const std::string& parentMountPath);
100 MountPoint mountPoint;
101 std::shared_ptr<Dispatcher> dispatcher;
103 StrictRouting strictRouting = StrictRouting::INHERIT;
118 friend class dispatcher::RouterDispatcher;
119 friend class Dispatcher;
120 friend class RootRoute;
121 friend class Controller;