10Duke Scale C++ Client
Loading...
Searching...
No Matches
tenduke::oidc::DefaultOIDCClientFactory Class Reference

#include <DefaultOIDCClientFactory.h>

Detailed Description

Default implementation of tenduke::oidc::OIDCClientFactory.

Inheritance diagram for tenduke::oidc::DefaultOIDCClientFactory:
tenduke::oidc::OIDCClientFactory

Public Member Functions

 DefaultOIDCClientFactory (const std::shared_ptr< const tenduke::http::HTTPClient > &httpClient, const std::shared_ptr< const tenduke::net::URLParser > &urlParser, const std::shared_ptr< const tenduke::json::JSONParser > &jsonParser, const std::shared_ptr< const tenduke::utl::Base64Encoder > &base64Encoder, const std::shared_ptr< const tenduke::crypto::MessageDigestFactory > &messageDigestFactory, const std::shared_ptr< tenduke::time::Clock > &clock, const std::shared_ptr< tenduke::utl::random::RandomUrlSafeString > &randomUrlSafeString, const std::shared_ptr< const tenduke::jwt::JWTParserFactory > &jwtParserFactory)
 Constructs new instance.
 
std::unique_ptr< tenduke::oidc::OIDCBrowserFlowcreate (std::shared_ptr< const tenduke::oauth::OAuthConfiguration > oauthConfiguration, std::shared_ptr< const tenduke::oidc::OIDCConfiguration > oidcConfiguration) const override
 Creates new tenduke::oidc::OIDCClient for browser-based flow.
 
std::unique_ptr< tenduke::oidc::OIDCBrowserFlowcreate (const tenduke::oauth::OAuthClientConfiguration &oauthClientConfiguration, const tenduke::oauth::OAuthBackendConfiguration &oauthBackendConfiguration, std::shared_ptr< const tenduke::oidc::OIDCConfiguration > oidcConfiguration) const override
 Creates new tenduke::oidc::OIDCClient for browser-based flow.
 

Protected Member Functions

virtual std::unique_ptr< tenduke::oauth::OAuthBrowserFlowcreateOAuthClient (std::shared_ptr< const tenduke::oauth::OAuthConfiguration > oauthConfiguration) const
 Creates OAUth client.
 

Constructor & Destructor Documentation

◆ DefaultOIDCClientFactory()

tenduke::oidc::DefaultOIDCClientFactory::DefaultOIDCClientFactory ( const std::shared_ptr< const tenduke::http::HTTPClient > &  httpClient,
const std::shared_ptr< const tenduke::net::URLParser > &  urlParser,
const std::shared_ptr< const tenduke::json::JSONParser > &  jsonParser,
const std::shared_ptr< const tenduke::utl::Base64Encoder > &  base64Encoder,
const std::shared_ptr< const tenduke::crypto::MessageDigestFactory > &  messageDigestFactory,
const std::shared_ptr< tenduke::time::Clock > &  clock,
const std::shared_ptr< tenduke::utl::random::RandomUrlSafeString > &  randomUrlSafeString,
const std::shared_ptr< const tenduke::jwt::JWTParserFactory > &  jwtParserFactory 
)

Constructs new instance.

Parameters
httpClient-
urlParser-
jsonParser-
base64Encoder-
messageDigestFactory-
clock-
randomUrlSafeString-
jwtParserFactory-

Member Function Documentation

◆ create() [1/2]

std::unique_ptr< tenduke::oidc::OIDCBrowserFlow > tenduke::oidc::DefaultOIDCClientFactory::create ( const tenduke::oauth::OAuthClientConfiguration oauthClientConfiguration,
const tenduke::oauth::OAuthBackendConfiguration oauthBackendConfiguration,
std::shared_ptr< const tenduke::oidc::OIDCConfiguration oidcConfiguration 
) const
overridevirtual

Creates new tenduke::oidc::OIDCClient for browser-based flow.

Parameters
oauthClientConfigurationconfiguration for the OAuth client
oauthBackendConfigurationconfiguration for the OAuth server
oidcConfigurationOIDC-configuration
Returns
the client

Implements tenduke::oidc::OIDCClientFactory.

◆ create() [2/2]

std::unique_ptr< tenduke::oidc::OIDCBrowserFlow > tenduke::oidc::DefaultOIDCClientFactory::create ( std::shared_ptr< const tenduke::oauth::OAuthConfiguration oauthConfiguration,
std::shared_ptr< const tenduke::oidc::OIDCConfiguration oidcConfiguration 
) const
overridevirtual

Creates new tenduke::oidc::OIDCClient for browser-based flow.

Parameters
oauthConfigurationcomplete OAuth-configuration
oidcConfigurationOIDC-configuration
Returns
the client

Implements tenduke::oidc::OIDCClientFactory.

◆ createOAuthClient()

std::unique_ptr<::OAuthBrowserFlow > tenduke::oidc::DefaultOIDCClientFactory::createOAuthClient ( std::shared_ptr< const tenduke::oauth::OAuthConfiguration oauthConfiguration) const
protectedvirtual

Creates OAUth client.

Parameters
oauthConfiguration-
Returns
-

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