10Duke Enterprise C++ Client
Loading...
Searching...
No Matches
DeviceAuthenticationClientFactory.h
1#ifndef TENDUKE_EE_DEVICEAUTHENTICATIONCLIENTFACTORY_H
2#define TENDUKE_EE_DEVICEAUTHENTICATIONCLIENTFACTORY_H
3
4#include "./AbstractClientFactory.h"
5#include "oidc/device/DeviceAuthenticationConfig.h"
6
7namespace tenduke { namespace ee {
8
9class DeviceAuthenticationClientFactory : public ::tenduke::ee::AbstractClientFactory<::tenduke::oidc::device::DeviceAuthenticationConfig>
10{
11public:
21 const std::string &clientId,
22 const ::tenduke::ServiceConfiguration &serviceConfiguration = ::tenduke::ServiceConfiguration()
23 );
24
31 DeviceAuthenticationClientFactory(const ::tenduke::TendukeServices &services);
32
33protected:
34 std::shared_ptr<::tenduke::oidc::OIDCLogin> createOIDCLoginService(
35 const std::shared_ptr<const ::tenduke::oauth::OAuthConfiguration> &oauthConfiguration,
36 const std::shared_ptr<const ::tenduke::oidc::OIDCConfiguration> &oidcConfiguration,
37 const ::tenduke::oidc::device::DeviceAuthenticationConfig &authenticationConfig
38 ) const override;
39 std::shared_ptr<::tenduke::oauth::OAuthConfiguration> mkOAuthConfiguration(
40 const ::tenduke::oauth::OAuthBackendConfiguration &oauthBackendConfiguration,
41 const ::tenduke::oidc::device::DeviceAuthenticationConfig &authenticationConfig
42 ) const override;
43
44};
45
46}} // tenduke
47
48#endif //TENDUKE_EE_DEVICEAUTHENTICATIONCLIENTFACTORY_H
Configuration for supporting services.
Definition ServiceConfiguration.h:12
Class template for factories, which create 10Duke client.
Definition AbstractClientFactory.h:26
Definition DeviceAuthenticationClientFactory.h:10
std::shared_ptr<::tenduke::oidc::OIDCLogin > createOIDCLoginService(const std::shared_ptr< const ::tenduke::oauth::OAuthConfiguration > &oauthConfiguration, const std::shared_ptr< const ::tenduke::oidc::OIDCConfiguration > &oidcConfiguration, const ::tenduke::oidc::device::DeviceAuthenticationConfig &authenticationConfig) const override
Creates the authentication-specific OIDC login service.
Definition DeviceAuthenticationClientFactory.cpp:33
std::shared_ptr<::tenduke::oauth::OAuthConfiguration > mkOAuthConfiguration(const ::tenduke::oauth::OAuthBackendConfiguration &oauthBackendConfiguration, const ::tenduke::oidc::device::DeviceAuthenticationConfig &authenticationConfig) const override
Creates full OAuth-configuration.
Definition DeviceAuthenticationClientFactory.cpp:20
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4