Orbit Framework
An ultra-modern, asynchronous, cross-platform C++ Web Framework.
Loading...
Searching...
No Matches
Config.hpp
Go to the documentation of this file.
1
#pragma once
2
#include <string>
3
#include <cstdint>
4
5
namespace
config
{
6
7
enum class
EventEngine
{
8
Epoll
,
9
IoUring
10
};
11
12
enum class
HttpVersion
{
13
Http1_1
,
14
Http2
,
15
Http3
16
};
17
18
struct
ServerConfig
{
19
uint16_t
port
{8080};
20
size_t
worker_threads
{4};
21
std::string
log_level
{
"INFO"
};
22
std::string
static_dir
{
"./public"
};
23
size_t
max_body_size
{10485760};
// Default 10 MB limit
24
std::string
ssl_cert
{
""
};
25
std::string
ssl_key
{
""
};
26
EventEngine
engine
{
EventEngine::Epoll
};
// Default to our new fast backend!
27
HttpVersion
http_version
{
HttpVersion::Http1_1
};
// Default to HTTP/1.1
28
29
static
ServerConfig
parse
(
int
argc,
char
* argv[]);
30
};
31
32
}
// namespace config
config
Definition
Config.hpp:5
config::HttpVersion
HttpVersion
Definition
Config.hpp:12
config::HttpVersion::Http3
@ Http3
config::HttpVersion::Http1_1
@ Http1_1
config::HttpVersion::Http2
@ Http2
config::EventEngine
EventEngine
Definition
Config.hpp:7
config::EventEngine::Epoll
@ Epoll
config::EventEngine::IoUring
@ IoUring
config::ServerConfig
Definition
Config.hpp:18
config::ServerConfig::ssl_cert
std::string ssl_cert
Definition
Config.hpp:24
config::ServerConfig::worker_threads
size_t worker_threads
Definition
Config.hpp:20
config::ServerConfig::max_body_size
size_t max_body_size
Definition
Config.hpp:23
config::ServerConfig::port
uint16_t port
Definition
Config.hpp:19
config::ServerConfig::log_level
std::string log_level
Definition
Config.hpp:21
config::ServerConfig::ssl_key
std::string ssl_key
Definition
Config.hpp:25
config::ServerConfig::http_version
HttpVersion http_version
Definition
Config.hpp:27
config::ServerConfig::static_dir
std::string static_dir
Definition
Config.hpp:22
config::ServerConfig::parse
static ServerConfig parse(int argc, char *argv[])
Definition
Config.cpp:9
config::ServerConfig::engine
EventEngine engine
Definition
Config.hpp:26
include
orbit
config
Config.hpp
Generated by
1.9.8