10Duke Enterprise C++ Client
Loading...
Searching...
No Matches
OAuthClientCredentialsGrantFlow.h
1#ifndef TENDUKE_OAUTH_CCG_OAUTHCLIENTCREDENTIALSGRANTFLOW_H
2#define TENDUKE_OAUTH_CCG_OAUTHCLIENTCREDENTIALSGRANTFLOW_H
3
4#include "./OAuthClientCredentialsGrantRequest.h"
5
6#include "../BaseOAuthClient.h"
7#include "../OAuthConfiguration.h"
8
9#include "http/HTTPClient.h"
10#include "json/JSONParser.h"
11#include "time/Clock.h"
12
13#include <map>
14#include <memory>
15#include <string>
16
17namespace tenduke { namespace oauth { namespace ccg {
18
25{
26public:
35 std::shared_ptr<const ::tenduke::oauth::OAuthConfiguration> config,
36 std::shared_ptr<const ::tenduke::http::HTTPClient> httpClient,
37 std::shared_ptr<const ::tenduke::json::JSONParser> jsonParser,
38 std::shared_ptr<::tenduke::time::Clock> clock
39 );
40
46 virtual std::unique_ptr<const ::tenduke::oauth::ccg::OAuthClientCredentialsGrantRequest> authorize() const;
47
48private:
49 const std::shared_ptr<const ::tenduke::oauth::OAuthConfiguration> config;
50 const std::shared_ptr<const ::tenduke::http::HTTPClient> httpClient;
51 const std::shared_ptr<const ::tenduke::json::JSONParser> jsonParser;
52 const std::shared_ptr<::tenduke::time::Clock> clock;
53};
54
55
56}}}
57
58#endif // TENDUKE_OAUTH_CCG_OAUTHCLIENTCREDENTIALSGRANTFLOW_H
Base class for OAuth-clients.
Definition BaseOAuthClient.h:27
OAuth Client Credentials Grant implementation of tenduke::oauth::OAuthClient.
Definition OAuthClientCredentialsGrantFlow.h:25
virtual std::unique_ptr< const ::tenduke::oauth::ccg::OAuthClientCredentialsGrantRequest > authorize() const
Creates new OAuth authorization request.
Definition OAuthClientCredentialsGrantFlow.cpp:8
OAuth services.
Definition AccessTokenRequestAuthenticator.h:8
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4