10Duke Scale C++ Client
Loading...
Searching...
No Matches
TendukeClientWithOIDCSessionImpl.h
1#ifndef TENDUKE_SE_TENDUKECLIENTWITHOIDCSESSIONIMPL_H
2#define TENDUKE_SE_TENDUKECLIENTWITHOIDCSESSIONIMPL_H
3
4#include "./TendukeClientWithOIDCSession.h"
5#include "jwk/JWKS.h"
6#include "oauth/OAuthConfiguration.h"
7#include "oidc/OIDCConfiguration.h"
8
9namespace tenduke { namespace se {
10
15{
16
17public:
29 const std::shared_ptr<::tenduke::se::licensing::LicensingClient> &licensingClient,
30 const std::shared_ptr<::tenduke::se::licensing::Leases> &leases,
31 const std::shared_ptr<::tenduke::se::licensing::LicenseConsumers> &licenseConsumers,
32 const std::shared_ptr<::tenduke::oidc::OIDCSession> &oidcSession,
33 const std::shared_ptr<const ::tenduke::oauth::OAuthConfiguration> &oauthConfiguration,
34 const std::shared_ptr<const ::tenduke::oidc::OIDCConfiguration> &oidcConfiguration,
35 const std::shared_ptr<::tenduke::jwk::JWKS> &licenseTokenValidationKeys
36 );
37
38 // `tenduke::se::TendukeClient interface`
39public:
40 std::string serializeState() override;
41
42private:
43 const std::shared_ptr<::tenduke::jwk::JWKS> licenseTokenValidationKeys;
44 const std::shared_ptr<const ::tenduke::oauth::OAuthConfiguration> oauthConfiguration;
45 const std::shared_ptr<const ::tenduke::oidc::OIDCConfiguration> oidcConfiguration;
46};
47
48}}
49
50#endif //TENDUKE_SE_TENDUKECLIENTWITHOIDCSESSIONIMPL_H
A tenduke::se::APIRequest, which uses tenduke::oidc::OIDCSession to maintain request authorization.
Definition StatefulAPIRequest.h:27
Implementation of tenduke::se::TendukeClientWithOIDCSession.
Definition TendukeClientWithOIDCSessionImpl.h:15
std::string serializeState() override
Serializes the client state into a JSON.
Definition TendukeClientWithOIDCSessionImpl.cpp:15
10Duke Scale client, which authorizes requests with OIDC/OAuth and maintains the OIDC session state a...
Definition TendukeClientWithOIDCSession.h:63
const std::shared_ptr<::tenduke::se::licensing::LicenseConsumers > licenseConsumers
Service for querying information about licenses.
Definition TendukeClientWithOIDCSession.h:85
const std::shared_ptr<::tenduke::oidc::OIDCSession > oidcSession
Service for maintaining the user login session.
Definition TendukeClientWithOIDCSession.h:87
const std::shared_ptr<::tenduke::se::licensing::Leases > leases
Lease-cache.
Definition TendukeClient.h:62
Root for classes, functions and globals of 10Duke C++ Client.
Definition BackendConfiguration.h:7