1#ifndef TENDUKE_OIDC_SERIALIZEDOIDCSESSION_H 
    2#define TENDUKE_OIDC_SERIALIZEDOIDCSESSION_H 
    4#include "./OIDCSession.h" 
   31        const std::shared_ptr<tenduke::oidc::OIDCSession> &session,
 
   32        const std::chrono::milliseconds &concurrencyTimeout
 
   39    std::shared_ptr<const tenduke::oidc::OIDCState> 
getOIDCState() 
override;
 
   47    const std::shared_ptr<tenduke::oidc::OIDCSession> session;
 
   49    const std::chrono::milliseconds concurrencyTimeout;
 
   50    std::recursive_timed_mutex serializeStateAccess;
 
 
SerializedOIDCSession(const std::shared_ptr< tenduke::oidc::OIDCSession > &session, const std::chrono::milliseconds &concurrencyTimeout)
Constructs new instance.
Definition SerializedOIDCSession.cpp:98
 
Stateful service to manage OIDC-session.
Definition OIDCSession.h:23
 
bool isValid() override
Checks that local session is valid.
Definition SerializedOIDCSession.cpp:74
 
bool heartbeat() override
Executes a heartbeat with the backend, checking that the current access token really works.
Definition SerializedOIDCSession.cpp:58
 
void refresh() override
Forces refresh of the session.
Definition SerializedOIDCSession.cpp:90
 
SerializedOIDCSession(const std::shared_ptr< tenduke::oidc::OIDCSession > &session, const std::chrono::milliseconds &concurrencyTimeout)
Constructs new instance.
Definition SerializedOIDCSession.cpp:98
 
std::shared_ptr< const tenduke::oidc::OIDCState > getOIDCState() override
Returns the current OIDC-state for inspection.
Definition SerializedOIDCSession.cpp:50
 
std::string getAccessToken() override
Returns access token of the session.
Definition SerializedOIDCSession.cpp:42
 
void ensureValidSession() override
Checks that the OIDC session is valid, but if it is NOT, either refreshes the access token or authent...
Definition SerializedOIDCSession.cpp:34
 
void reEstablish() override
Re-establishes the session: Tries first to refresh the state, if it fails, re-authenticates the user.
Definition SerializedOIDCSession.cpp:82
 
void invalidate() override
Invalidates the session.
Definition SerializedOIDCSession.cpp:66
 
Implementation of OpenID Connect protocol.
Definition AutoDiscovery.h:18
 
const std::chrono::seconds DEFAULT_SESSION_CONCURRENCY_TIMEOUT
Default timeout for serialized methods.
Definition SerializedOIDCSession.h:13
 
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4