49 std::shared_ptr<const tenduke::oauth::OAuthConfiguration> config,
50 std::shared_ptr<const tenduke::http::HTTPClient> httpClient,
51 std::shared_ptr<const tenduke::net::URLParser> urlParser,
52 std::shared_ptr<const tenduke::json::JSONParser> jsonParser,
53 std::shared_ptr<const tenduke::utl::Base64Encoder> base64Encoder,
54 std::shared_ptr<const tenduke::crypto::MessageDigestFactory> messageDigestFactory,
55 std::shared_ptr<tenduke::time::Clock> clock,
56 std::shared_ptr<tenduke::utl::random::RandomUrlSafeString> randomUrlSafeString
61 std::unique_ptr<const tenduke::oauth::OAuthBrowserAuthorizationRequest>
authorize(
const std::string &scopes)
const override;
62 std::unique_ptr<const tenduke::oauth::OAuthBrowserAuthorizationRequest>
authorize(
63 const std::string &scopes,
64 const std::map<std::string, std::string> &additionalParameters
81 std::size_t stateLength;
82 std::size_t pkceCodeVerifierLength;
84 const std::shared_ptr<const OAuthConfiguration> config;
85 const std::shared_ptr<const tenduke::http::HTTPClient> httpClient;
86 const std::shared_ptr<const tenduke::net::URLParser> urlParser;
87 const std::shared_ptr<const tenduke::json::JSONParser> jsonParser;
88 const std::shared_ptr<const tenduke::utl::Base64Encoder> base64Encoder;
89 const std::shared_ptr<const tenduke::crypto::MessageDigestFactory> messageDigestFactory;
90 const std::shared_ptr<tenduke::time::Clock> clock;
91 const std::shared_ptr<tenduke::utl::random::RandomUrlSafeString> randomUrlSafeString;