Decentralised Art Server
High-performance C++ backend that exposes HTML interface and a secure REST API for managing Performative Transactions entities
Loading...
Searching...
No Matches
dcn::server::Router Class Reference

A class representing a router for handling HTTP requests. More...

#include <route.hpp>

Public Member Functions

 Router ()=default
 ~Router ()=default
void addRoute (RouteKey route, RouteHandlerFunc handler)
std::tuple< const RouteHandlerFunc *, std::vector< RouteArg >, QueryArgsListfindRoute (const http::Request &request) const

Protected Member Functions

std::tuple< bool, std::vector< RouteArg >, QueryArgsListdoesRouteMatch (const RouteKey &route, const http::Method &request_method, const std::string &module_path, const std::vector< std::string > &request_path_info_segments, const absl::flat_hash_map< std::string, std::string > request_query_segments) const

Detailed Description

A class representing a router for handling HTTP requests.

This class is used to store and execute set of route handler functions.

Constructor & Destructor Documentation

◆ Router()

dcn::server::Router::Router ( )
default

◆ ~Router()

dcn::server::Router::~Router ( )
default

Member Function Documentation

◆ addRoute()

void dcn::server::Router::addRoute ( RouteKey route,
RouteHandlerFunc handler )

◆ doesRouteMatch()

std::tuple< bool, std::vector< RouteArg >, QueryArgsList > dcn::server::Router::doesRouteMatch ( const RouteKey & route,
const http::Method & request_method,
const std::string & module_path,
const std::vector< std::string > & request_path_info_segments,
const absl::flat_hash_map< std::string, std::string > request_query_segments ) const
protected

◆ findRoute()

std::tuple< const RouteHandlerFunc *, std::vector< RouteArg >, QueryArgsList > dcn::server::Router::findRoute ( const http::Request & request) const

The documentation for this class was generated from the following files: