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::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::Router::Router ( )
default

◆ ~Router()

dcn::Router::~Router ( )
default

Member Function Documentation

◆ addRoute()

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

◆ doesRouteMatch()

std::tuple< bool, std::vector< RouteArg >, QueryArgsList > dcn::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::Router::findRoute ( const http::Request request) const

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