10Duke Enterprise C++ Client
Loading...
Searching...
No Matches
BaseOAuthClient Class Reference

#include <BaseOAuthClient.h>

Detailed Description

Base class for OAuth-clients.

A rather torso, since browser-based and device-flow clients have wildly different signatures.

Inheritance diagram for BaseOAuthClient:
tenduke::oauth::OAuthClient tenduke::oauth::ccg::OAuthClientCredentialsGrantFlow tenduke::oauth::device::DefaultOAuthDeviceFlow tenduke::oauth::pkce::OAuthPKCEFlow tenduke::oauth::ropg::OAuthResourceOwnerPasswordFlow

Public Member Functions

 BaseOAuthClient (std::shared_ptr< const tenduke::oauth::OAuthConfiguration > config, std::shared_ptr< const tenduke::http::HTTPClient > httpClient, std::shared_ptr< const tenduke::json::JSONParser > jsonParser, std::shared_ptr< tenduke::time::Clock > clock)
 Constructs new instance.
 
std::shared_ptr< const OAuthConfigurationgetConfiguration () const
 Returns the configuration of this client.
 
std::unique_ptr< const tenduke::oauth::OAuthRefreshRequestrefresh (std::shared_ptr< tenduke::oauth::OAuthState > state) const override
 
- Public Member Functions inherited from tenduke::oauth::OAuthClient
virtual std::unique_ptr< const tenduke::oauth::OAuthRefreshRequestrefresh (std::shared_ptr< tenduke::oauth::OAuthState > state) const =0
 Creates OAuthRefreshRequest for refreshing the state.
 

Protected Attributes

const std::shared_ptr< const OAuthConfigurationconfig
 OAuth configuration.
 
const std::shared_ptr< const tenduke::http::HTTPClienthttpClient
 HTTP client.
 
const std::shared_ptr< const tenduke::json::JSONParserjsonParser
 For parsing responses.
 
const std::shared_ptr< tenduke::time::Clockclock
 Clock to generate "expires-at" from "expires-in".
 

Constructor & Destructor Documentation

◆ BaseOAuthClient()

tenduke::oauth::BaseOAuthClient::BaseOAuthClient ( std::shared_ptr< const tenduke::oauth::OAuthConfiguration > config,
std::shared_ptr< const tenduke::http::HTTPClient > httpClient,
std::shared_ptr< const tenduke::json::JSONParser > jsonParser,
std::shared_ptr< tenduke::time::Clock > clock )

Constructs new instance.

Parameters
config-
httpClient-
jsonParser-
clock-

Member Function Documentation

◆ getConfiguration()

std::shared_ptr< const OAuthConfiguration > tenduke::oauth::BaseOAuthClient::getConfiguration ( ) const
inline

Returns the configuration of this client.

Returns
-

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