10Duke Scale C++ Client
Loading...
Searching...
No Matches
DefaultOAuthRefreshRequest.h
1#ifndef TENDUKE_OAUTH_DEFAULTOAUTHREFRESHREQUEST_H
2#define TENDUKE_OAUTH_DEFAULTOAUTHREFRESHREQUEST_H
3
4#include "./OAuthConfiguration.h"
5#include "./OAuthRefreshRequest.h"
6#include "./OAuthTokenRequest.h"
7
8#include "http/HTTPClient.h"
9#include "json/JSONParser.h"
10#include "time/Clock.h"
11#include "utl/Base64Encoder.h"
12
13#include <memory>
14
15
16namespace tenduke { namespace oauth {
17
22{
23public:
33 const std::shared_ptr<const tenduke::oauth::OAuthState> &state,
34 const std::shared_ptr<const tenduke::oauth::OAuthConfiguration> &config,
35 const std::shared_ptr<const tenduke::http::HTTPClient> &httpClient,
36 const std::shared_ptr<const tenduke::json::JSONParser> &jsonParser,
37 const std::shared_ptr<tenduke::time::Clock> &clock
38 );
39
40 // ::tenduke::oauth::OAuthRefreshRequest interface
41public:
42 std::unique_ptr<tenduke::oauth::OAuthState> execute() const override;
43
44protected:
49 virtual std::unique_ptr<tenduke::oauth::OAuthTokenRequest> createTokenRequest() const;
50
55 virtual std::map<std::string, std::string> buildRequestParameters() const;
56
57private:
58 const std::shared_ptr<const tenduke::oauth::OAuthState> originalState;
59 const std::shared_ptr<const tenduke::oauth::OAuthConfiguration> config;
60
61 const std::shared_ptr<const tenduke::http::HTTPClient> http;
62 const std::shared_ptr<const tenduke::json::JSONParser> parseJSON;
63 const std::shared_ptr<tenduke::time::Clock> clock;
64};
65
66}}
67
68#endif //TENDUKE_OAUTH_DEFAULTOAUTHREFRESHREQUEST_H
Default implementation tenduke::oauth::OAuthRefreshRequest.
Definition DefaultOAuthRefreshRequest.h:22
virtual std::unique_ptr< tenduke::oauth::OAuthTokenRequest > createTokenRequest() const
Creates the token request.
Definition DefaultOAuthRefreshRequest.cpp:29
std::unique_ptr< tenduke::oauth::OAuthState > execute() const override
Executes the refresh request.
Definition DefaultOAuthRefreshRequest.cpp:13
virtual std::map< std::string, std::string > buildRequestParameters() const
Builds request parameters.
Definition DefaultOAuthRefreshRequest.cpp:41
Request to refresh OAuthState.
Definition OAuthRefreshRequest.h:17
OAuth services.
Definition AccessTokenRequestAuthenticator.h:8
Root for classes, functions and globals of 10Duke C++ Client.
Definition BackendConfiguration.h:7