MySQL 9.3.0
Source Code Documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
mrs::http::Cookie Class Reference

#include <cookie.h>

Public Types

enum  SameSite { None , Lex , Strict }
 
using duration = std::chrono::steady_clock::duration
 
using Request = ::http::base::Request
 
using MapWithCookies = std::map< std::string, std::string >
 

Public Member Functions

 Cookie (Request *request)
 
void set (const std::string &cookie_name, const std::string &value, const duration duration={}, const std::string &path={}, const SameSite *same_site=nullptr, bool secure=false, bool http_only=false, const std::string &domain={})
 
std::string get (const std::string &key)
 
void clear (const char *cookie_name)
 
MapWithCookiesdirect ()
 

Static Public Member Functions

static void clear (Request *request, const char *cookie_name)
 
static void set (Request *request, const std::string &cookie_name, const std::string &value, const duration duration={}, const std::string &path={}, const SameSite *same_site=nullptr, bool secure=false, bool http_only=false, const std::string &domain={})
 

Private Attributes

MapWithCookies cookies_
 
Requestrequest_
 

Static Private Attributes

static const char * kHttpParameterNameCookie = "Cookie"
 

Member Typedef Documentation

◆ duration

using mrs::http::Cookie::duration = std::chrono::steady_clock::duration

◆ MapWithCookies

using mrs::http::Cookie::MapWithCookies = std::map<std::string, std::string>

◆ Request

Member Enumeration Documentation

◆ SameSite

Enumerator
None 
Lex 
Strict 

Constructor & Destructor Documentation

◆ Cookie()

mrs::http::Cookie::Cookie ( Request request)

Member Function Documentation

◆ clear() [1/2]

void mrs::http::Cookie::clear ( const char *  cookie_name)

◆ clear() [2/2]

void mrs::http::Cookie::clear ( Request request,
const char *  cookie_name 
)
static

◆ direct()

std::map< std::string, std::string > & mrs::http::Cookie::direct ( )

◆ get()

std::string mrs::http::Cookie::get ( const std::string &  key)

◆ set() [1/2]

void mrs::http::Cookie::set ( const std::string &  cookie_name,
const std::string &  value,
const duration  duration = {},
const std::string &  path = {},
const SameSite same_site = nullptr,
bool  secure = false,
bool  http_only = false,
const std::string &  domain = {} 
)

◆ set() [2/2]

void mrs::http::Cookie::set ( Request request,
const std::string &  cookie_name,
const std::string &  value,
const duration  duration = {},
const std::string &  path = {},
const SameSite same_site = nullptr,
bool  secure = false,
bool  http_only = false,
const std::string &  domain = {} 
)
static

Member Data Documentation

◆ cookies_

MapWithCookies mrs::http::Cookie::cookies_
private

◆ kHttpParameterNameCookie

const char * mrs::http::Cookie::kHttpParameterNameCookie = "Cookie"
staticprivate

◆ request_

Request* mrs::http::Cookie::request_
private

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