1#ifndef TENDUKE_SE_DESERIALIZESTATEFROMJSON_H
2#define TENDUKE_SE_DESERIALIZESTATEFROMJSON_H
4#include "./ClientState.h"
5#include "../licensing/api/MutableLeases.h"
6#include "crypto/KeyFactory.h"
7#include "json/JSONArray.h"
8#include "json/JSONParser.h"
10#include "jwt/JWTParserFactory.h"
11#include "oauth/OAuthConfiguration.h"
12#include "oidc/OIDCConfiguration.h"
13#include "oidc/OIDCState.h"
17namespace tenduke {
namespace se {
32 const std::shared_ptr<const ::tenduke::jwt::JWTParserFactory> &newJwtParser,
33 const std::shared_ptr<const ::tenduke::json::JSONParser> &parseJson,
34 const std::shared_ptr<const ::tenduke::crypto::KeyFactory> &parsePublicKey
60 const ::tenduke::json::JSONArray * leases,
61 const std::shared_ptr<::tenduke::jwk::JWKS>& jwks
78 const ::tenduke::json::JSONObject *oidcSession,
79 const std::shared_ptr<const ::tenduke::oidc::OIDCConfiguration>& oidcConfiguration
90 const std::shared_ptr<const ::tenduke::jwt::JWTParserFactory> newJWTParser;
91 const std::shared_ptr<const ::tenduke::json::JSONParser> parseJSON;
92 const std::shared_ptr<const ::tenduke::crypto::KeyFactory> parsePublicKey;
Service for deserializing client state from JSON.
Definition DeserializeStateFromJSON.h:23
std::shared_ptr<::tenduke::oauth::OAuthConfiguration > deserializeOAuthConfiguration(const ::tenduke::json::JSONObject *oauthCfg) const
Deserializes OAuth-configruration.
Definition DeserializeStateFromJSON.cpp:192
std::shared_ptr<::tenduke::jwk::JWKS > deserializeLicenseTokenValidationKeys(const ::tenduke::json::JSONObject *keys) const
Deserializes license token validation keys.
Definition DeserializeStateFromJSON.cpp:95
std::shared_ptr<::tenduke::oidc::OIDCState > deserializeOIDCState(const ::tenduke::json::JSONObject *oidcSession, const std::shared_ptr< const ::tenduke::oidc::OIDCConfiguration > &oidcConfiguration) const
Deserializes OIDC state.
Definition DeserializeStateFromJSON.cpp:157
std::shared_ptr<::tenduke::se::licensing::MutableLeases > deserializeLeases(const ::tenduke::json::JSONArray *leases, const std::shared_ptr<::tenduke::jwk::JWKS > &jwks) const
Deserializes leases.
Definition DeserializeStateFromJSON.cpp:114
DeserializeStateFromJSON(const std::shared_ptr< const ::tenduke::jwt::JWTParserFactory > &newJwtParser, const std::shared_ptr< const ::tenduke::json::JSONParser > &parseJson, const std::shared_ptr< const ::tenduke::crypto::KeyFactory > &parsePublicKey)
Constructs new instance.
Definition DeserializeStateFromJSON.cpp:210
::tenduke::se::ClientState from(const std::string &stateSerializedAsJSON) const
Deserializes the state from JSON.
Definition DeserializeStateFromJSON.cpp:45
std::shared_ptr<::tenduke::oidc::OIDCConfiguration > deserializeOIDCConfiguration(const ::tenduke::json::JSONObject *oidcCfg) const
Deserializes OIDC configuration.
Definition DeserializeStateFromJSON.cpp:143
Root for classes, functions and globals of 10Duke C++ Client.
Definition BackendConfiguration.h:7
Container for client state.
Definition ClientState.h:18