26#ifndef ROUTER_SRC_REST_MRS_SRC_MRS_AUTHENTICATION_TRACK_AUTHORIZE_HANDLER_H_
27#define ROUTER_SRC_REST_MRS_SRC_MRS_AUTHENTICATION_TRACK_AUTHORIZE_HANDLER_H_
34namespace authentication {
36template <
typename Callback,
typename Handler>
46 template <
typename...
T>
50 return Handler::get_service_ids();
54 return Handler::redirects(ctxt);
62 return Handler::authorize(ctxt, session, out_user);
66 const std::string &account)
override {
67 log_debug(
"TrackAuthorizeHandler::pre_authorize_account %s",
Class that stores callback function reference as well as the result of the callback function call (in...
Definition: keyring_service.cc:44
The handler class is the interface for dynamically loadable storage engines.
Definition: handler.h:4618
Definition: track_authorize_handler.h:37
const AuthApp & get_entry() const override
Definition: track_authorize_handler.h:58
Callback * cb_
Definition: track_authorize_handler.h:73
bool authorize(RequestContext &ctxt, const SessionPtr &session, AuthUser *out_user) override
Definition: track_authorize_handler.h:60
typename Handler::AuthUser AuthUser
Definition: track_authorize_handler.h:42
std::set< UniversalId > get_service_ids() const override
Definition: track_authorize_handler.h:49
typename Handler::Session Session
Definition: track_authorize_handler.h:40
typename Handler::SessionPtr SessionPtr
Definition: track_authorize_handler.h:41
typename Handler::RequestContext RequestContext
Definition: track_authorize_handler.h:43
bool redirects(RequestContext &ctxt) const override
Definition: track_authorize_handler.h:53
UniversalId get_id() const override
Definition: track_authorize_handler.h:56
typename Handler::AuthApp AuthApp
Definition: track_authorize_handler.h:39
TrackAuthorizeHandler(Callback *cb, T... t)
Definition: track_authorize_handler.h:47
void pre_authorize_account(AuthorizeHandler *handler, const std::string &account) override
Definition: track_authorize_handler.h:65
Definition: authorize_handler.h:53
Log log_debug(std::cout, "DEBUG")
#define T
Definition: jit_executor_value.cc:373
static bool cb(unsigned long long new_value)
Definition: option_usage.cc:45
mrs::database::entry::AuthApp AuthApp
Definition: oauth2_handler.cc:58
mrs::database::entry::AuthUser AuthUser
Definition: scram_handler.cc:54
AuthorizeManager::SessionPtr SessionPtr
Definition: authorize_manager.cc:79
AuthorizeManager::Session Session
Definition: authorize_manager.cc:75
Definition: authorize_manager.h:48
mrs::database::entry::UniversalId UniversalId
Definition: universal_id.h:33
pid_type get_id()
Definition: process.h:48