▼Ntenduke | Root for classes, functions and globals of 10Duke C++ Client |
►Nconcurrent | Concurrency-related tools |
CGuardWithTimeout | A mutex-guard with timeout functionality |
►Ncrypto | Cryptography services |
►Nlibcrypto | libcrypto based implementations of cryptography services |
CAsymmetricMessageDigest | Libcrypto-implementation of asymmetric tenduke::crypto::MessageDigestVerifier |
CBigNumber | A BigNumber, RAII wrapper of libcrypto BIGNUM |
CLibcryptoKey | Libcrypto-implementation of a public key definition |
CLibCryptoMessageDigest | Libcrypto-implementation of tenduke::crypto::MessageDigest |
CLibcryptoMessageDigestFactory | Libcrypto-implementation of ‘tenduke::crypto::MessageDigestFactory’ |
CLibcryptoPrivateKey | Libcrypto-implementation of a private key definition |
CLibcryptoPublicKey | Libcrypto-implementation of a public key definition |
CLibcryptoRSAKeyFactory | Libcrypto implementation of tenduke::crypto::RSAKeyFactory |
CPublicKeyToPEM | Utility service to convert Libcrypto public key (EVP_PKEY) to PEM |
CCryptoException | Thrown when something goes with crypto |
CKeyFactory | Creates cryptographical keys |
CMessageDigest | Simple MessageDigest -service |
CMessageDigestFactory | Creates instances of tenduke::crypto::MessageDigest |
CMessageDigestVerifier | Verifies message by computing digest for message and comparing the computed signature to the provided signature |
CMessageDigestVerifierFactory | Factory for creating pre-configured instances of tenduke::crypto::MessageDigestVerifier |
CPrivateKey | Private key |
CPublicKey | Public key |
CPublicKeyVerifierFactory | An implementation of tenduke::crypto::MessageDigestVerifierFactory , which is configured with algorithm and public key, and creates new instances of tenduke::crypto::MessageDigestVerifier configured with those key and algorithm |
CRSAKeyFactory | |
►Nhttp | HTTP-related services |
►Ncurl | Implementation of HTTP-client using libcurl |
CLibCurlHTTPCall | LibCurl-based implementation of tenduke::http::HTTPCall |
CLibCurlHTTPClient | LibCurl -based implementation of HTTPClient |
►Nserver | Simple HTTP-server |
CAbstractHTTPServer | Abstract base class of a HTTP server |
CHTTPRequest | A HTTP-request parsed by HTTP server |
CHTTPRequestHandler | Service interface for handling a HTTP request |
CHTTPResponse | HTTP-response to be returned by a HTTP server |
CHTTPServer | Interface for simple HTTPServer |
CHTTPServerFactory | Creates HTTPServer |
CBadRequest | Thrown for HTTP status code 400 "BadRequest" |
CClientError | 4xx-series, base class for many 4xx-exceptions |
CForbidden | Thrown for HTTP status code 403, "Forbidden" |
CHTTPCall | HTTP-call which executes the request and returns HTTPResponse |
CHTTPClient | A simple HTTP-client |
CHTTPException | A generic HTTP-exception |
CHTTPRequest | HTTP-request, which contains all necessary details to construct the request |
CHTTPRequestAuthenticator | This is a service, that can be added to tenduke::http::HTTPRequest to add authentication information to the request |
CHTTPRequestBuilder | Builds HTTPRequest |
CHTTPRequestException | This exception is thrown when a HTTP-request fails for HTTP-specific reasons in the client end |
CHTTPResponse | A HTTP Response |
CHTTPResponseException | This exception is thrown when HTTP-request fails because of HTTP-statuscode |
CHTTPResponseToException | Utility service to throw an exception based on tenduke::http::HTTPResponse |
CNotFound | Thrown for HTTP status code 404, "Not Found" |
CServerError | 5xx-error, base class for 5xx-exceptions |
CUnauthorized | Thrown for HTTP status code 401, "Unauthorized" |
►Njson | JSON support |
►Ncjson | Implementation of JSON service interfaces using cJSON |
CCjsonArray | CJSON-implementation of tenduke::json::JSONArray |
CCjsonBoolean | CJSON-implementation of tenduke::json::JSONBoolean |
CCjsonElement | CJSON-implementation of tenduke::json::JSONElement |
CCjsonNumber | CJSON-implementation of tenduke::json::JSONNumber |
CCjsonObject | CJSON-implementation of tenduke::json::JSONObject |
CcJSONParser | CJSON-implementation of tenduke::json::JSONParser |
CCjsonString | CJSON-implementation of tenduke::json::JSONString |
CJSONArray | A JSON array |
CJSONArrayBuilder | Builds JSON-array |
CJSONBoolean | JSON boolean |
CJSONBuilder | NOTE: This class is for now INTERNAL USE ONLY |
CJSONElement | Superclass of JSON elements |
CJSONException | Thrown on JSON-related errors |
CJSONNumber | Represents JSON number |
CJSONObject | JSON object element |
CJSONObjectBuilder | Builds JSON objects |
CJSONParser | Parser for JSON documents |
CJSONParsingException | Thrown when JSON parsing failed |
CJSONString | JSON string element |
►Njwk | Support for JSON Web Keys |
CDynamicJWKSSignatureValidator | Extension of tenduke::jwk::JWKSSignatureValidator , which first looks up key in cache, and if not found, tries to refresh-the cache |
CJWK | Describes a JWK, Json Web Key |
CJWKException | Thrown when something goes wrong with JWKs |
CJWKParser | Parses JSON Web Key (JWK) from JSON |
CJWKS | JSON Web Key Set, a container for one or more tenduke::jwk::JWK s, indexed by the JWK key ID |
CJWKSDownloader | Service to download and parse JSON Web Key Set (JWKS) |
CJWKSParser | Parses JSON Web Key Set (JWKS)-document |
CJWKSSignatureValidator | A tenduke::jwt::JWTSignatureValidator , which determines the validation key and algorithm based on the JWT header and looking up the key from memory cache |
►Njwt | Support for JSON Web Tokens |
CDefaultJWTParser | Default implementation of tenduke::jwt::JWTParser |
CDefaultJWTParserFactory | Default implementation of tenduke::jwt::JWTParserFactory |
CFixedKeyJWTSignatureValidator | A tenduke::jwt::JWTSignatureValidator, which expects that the signature digestAlgorithm and verification key are pre-configured |
CJWT | Very simple JWT implementation |
CJWTParser | Parses JWT |
CJWTParserFactory | |
CJWTParsingException | Thrown when there is a problem parsing JWT |
CJWTSignatureValidator | Service for validating the JWT-signature |
CJWTValidationException | Thrown when JWT-validation failed (e.g |
►Nlog | Logging support |
CLogger | Simple logger interface |
CStdOutLogger | Very, very simple logger, which dumps all to std::out |
►Nnet | Generic networking support |
►Ncurl | libcurl based implementation of generic network services |
CLibcurlURL | Libcurl-based implementation of tenduke::net::URL |
CLibCurlURLDecoder | Libcurl implementation of tenduke::net::URLDecoder |
CLibCurlURLEncoder | Libcurl implementation of tenduke::net::URLEncoder |
CLibCurlURLParser | Libcurl implementation of tenduke::net::URLParser |
CMalformedURLException | Thrown when URL is malformed |
CNetworkingException | Generic networking exception |
CRequestTimedOut | A tenduke::net::NetworkingException thrown when network request timed out |
CUnknownHostException | A tenduke::net::NetworkingException thrown when the host is not found |
CURL | Represents URL |
CURLBuilder | Very simple URL-builder |
CURLDecoder | Service to URL-decode a string |
CURLEncoder | Service to URL-encode a string |
CURLException | A tenduke::net::NetworkingException thrown when various URL-related errors occur |
CURLParser | A service to parse URLs from strings |
►Noauth | OAuth services |
►Ndevice | Implementation of OAuth device flow |
CDefaultOAuthDeviceFlow | Default implementation of tenduke::oauth::device::OAuthDeviceFlow |
CDefaultOAuthDeviceFlowAuthorizationRequest | Default implementation of tenduke::oauth::device::OAuthDeviceFlowAuthorizationRequest |
CDeviceAuthorizationResponse | Device Authorization Response |
COAuthDeviceAuthorizationResponseReceived | A callback to denote that Device Authorization Response has been received |
COAuthDeviceFlow | OAuth DeviceFlow |
COAuthDeviceFlowAuthorizationRequest | Authorization request for OAuth Device Flow |
►Npkce | Implementation of OAuth "Authorization Code Flow with PKCE" |
COAuthPKCEFlow | OAuth Authorization Code Grant with PKCE implementation of tenduke::oauth::OAuthClient |
COAuthPKCERequest | PKCE-implementation of tenduke::oauth::OAuthRequest |
CAccessTokenRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator, which uses fixed access token to authenticate HTTP-requests |
CBaseOAuthClient | Base class for OAuth-clients |
CDefaultOAuthRefreshRequest | Default implementation tenduke::oauth::OAuthRefreshRequest |
CHTTPResponseToOAuthException | Throws OAuthExceptions based on HTTP error response |
COAuthAuthorizationRequest | OAuth-request handles the OAuth authorization flow |
COAuthBackendConfiguration | Container for OAuth-backend configuration |
COAuthBrowserAuthorizationRequest | OAuth-request to handle OAuth authorization using browser |
COAuthBrowserFlow | OAuth-client to initiate OAuth authorization flow |
COAuthClient | OAuth-client to initiate OAuth authorization flow |
►COAuthClientConfiguration | Container for OAuth-client-configuration |
CBuilder | Builder for the configuration |
COAuthConfiguration | Container for OAuth-configuration |
COAuthException | Generic OAuth-related exception |
COAuthInvalidGrant | Exception thrown when server reported "invalid_grant" |
COAuthRefreshRequest | Request to refresh OAuthState |
COAuthServerError | Thrown when server reported an OAuth-related error |
COAuthState | OAuth session state |
COAuthStateImpl | Implementation of OAuthState |
COAuthStateService | OAuth-state after successful authentication |
COAuthStateServiceImpl | Default implementation of tenduke::oauth::OAuthStateService |
COAuthTokenRequest | OAuth token request |
COAuthTokenResponse | Encapsulates results from tenduke::oauth::OAuthTokenRequest |
►Noidc | Implementation of OpenID Connect protocol |
►Ndevice | OIDC-wrapping of OAuth Device Flow |
CDefaultOIDCDeviceAuthenticationRequest | Default implementation of tenduke::oidc::device::OIDCDeviceAuthenticationRequest |
CDefaultOIDCDeviceFlow | Default implementation of tenduke::oidc::device::OIDCDeviceFlow |
CDeviceAuthenticationConfig | Configuration for OIDC device authentication |
COIDCDeviceAuthenticationRequest | OIDC Authentication request using OAuth Device Authorization Grant |
COIDCDeviceFlow | OpenID Connect -client for OAuth Device Authorization Grant |
COIDCDeviceFlowLogin | Login service using OIDC with OAuth Device Authorization Grant |
COIDCDeviceFlowLoginRequest | Login request using OIDC with OAuth Device Authorization Grant |
►Nosbrowser | Services to perform OIDC-login using OS-browser with loopback redirection |
CBrowserAuthenticationConfig | Configuration for "default OS-browser"-based authentication |
COIDCLoginRequestWithLoopbackRedirection | An implementation of tenduke::sso::OIDCLogin using external browser (the OS default browser) and with "Loopback Interface Redirection" (see https://www.rfc-editor.org/rfc/rfc8252#section-7.3) |
COIDCLoginWithLoopbackRedirection | An implementation of tenduke::sso::OIDCLogin using external browser (the OS default browser) and with "Loopback Interface Redirection" (see https://www.rfc-editor.org/rfc/rfc8252#section-7.3) |
CRedirectUriHandler | A HTTPRequestHandler, which listens to OAuth2 server redirect URI and signals of the completion of the login |
CAutoDiscovery | Service for querying OIDC configuration from known URL |
CAutoDiscoveryResult | Result of OIDC auto-configuration query |
CBaseOIDCClient | Base-class for OIDC-clients |
CBaseOIDCRequest | Base class for OIDC requests |
CDefaultOIDCBrowserFlow | Default implementation of browser-based OIDC-client |
CDefaultOIDCBrowserFlowAuthenticationRequest | Default browser-based OIDC authentication request |
CDefaultOIDCClientFactory | Default implementation of tenduke::oidc::OIDCClientFactory |
CDefaultOIDCRefreshRequest | Default implementation for tenduke::oidc::OIDCRefreshRequest |
CDefaultOIDCSessionEventListener | Default implementation of tenduke::oidc::OIDCSessionEventListener |
CIdToken | OIDC ID-token |
CIdTokenSession | A tenduke::oidc::OIDCSession , which uses ID-token as the source-of-truth for expiration times |
CIdTokenSessionRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator , which adds Authorization-header with OAuth ID-token |
COIDCAuthenticationRequest | OIDC-request, which handles the OIDC-flow |
COIDCAutoDiscoveryConfiguration | Configuration for OIDC auto-discovery |
COIDCBrowserFlow | OpenID Connect -client |
COIDCBrowserFlowAuthenticationRequest | An OIDC-authentication request, which handles the OIDC-flow, authenticating the user with browser |
COIDCClient | OpenID Connect -client |
COIDCClientFactory | Factory for creating tenduke::oidc::OIDCClient |
COIDCConfiguration | OIDC-configuration |
COIDCException | Thrown when OIDC-related errors occur |
COIDCLogin | High-level service to perform OIDC-login |
COIDCLoginRequest | Login-request initiated by OIDCLogin-service |
COIDCRefreshRequest | A request to refresh OIDC state |
COIDCSession | Stateful service to manage OIDC-session |
►COIDCSessionConfiguration | Configuration for tenduke::oidc::OIDCSessionImpl |
CBuilder | Builder for the configuration |
COIDCSessionEventListener | Event listener for OIDC session events |
COIDCSessionImpl | Default implementation of tenduke::oidc::OIDCSession |
COIDCSessionRequestAuthenticator | A tenduke::http::HTTPRequestAuthenticator , which adds Authorization-header with Bearer-token |
COIDCState | Container of OIDC state, describing the user session |
CSerializedOIDCSession | A tenduke::oidc::OIDCSession , which guards that only one thread at a time can access the instance |
►Nosa | Operating system abstraction |
CAbstractBaseSocket | Abstract base implementation of tenduke::osa::Socket |
CBrowserFactory | Creates platform-specific browser service |
CBrowserIntegration | Service for opening URL in a browser |
CDefaultHTTPServerFactory | Default HTTP server factory |
CSocket | OS-independent abstraction of a socket |
CSocketDescriptor | Wraps the socket descriptor for RAII |
►Nse | Classes, functions and globals of 10Duke Scale C++ Client |
►Nhttp | 10Duke Scale C++ Client -specific HTTP implementation |
CAPIException | Base class for exceptions, which are mapped from HTTP-status-codes from 10Duke Scale backend |
CBadRequest | Thrown when 10Duke Scale backend responds with HTTP 400 |
CClientError | Base class for exceptions when 10Duke Scale backend responds with HTTP 4xx |
CConflict | Thrown when 10Duke Scale backend responds with HTTP 409 |
CForbidden | Thrown when 10Duke Scale backend responds with HTTP 403 |
CHTTPResponseToAPIException | 10Duke Scale specific service for mapping HTTP responses to exceptions |
CNotFound | Thrown when 10Duke Scale backend responds with HTTP 404 |
CServerError | Base class for exceptions about HTTP status code 5xx |
CTooManyRequests | Thrown when 10Duke Scale backend responds with HTTP 429 |
CUnauthorized | Thrown when 10Duke Scale backend responds with HTTP 401 |
►Nlicensing | Licensing operations for 10Duke Scale |
►Nrest | Low-level services for performing licensing REST-requests |
CAbstractAPIRequestMixin | Abstract base-class with generic implementation for 10Duke Scale API requests |
CAbstractLicenseRequest | Abstract base class for license-related requests |
CAbstractPagingAPIRequest | Abstract base class for API-requests, which support paging |
CDefaultDescribeLicenseConsumerClientBindingsRequest | Default implementation of tenduke::se::licensing::rest::DescribeLicenseConsumerClientBindingsRequest |
CDefaultDescribeLicenseConsumerLicenseesRequest | Default implementation of :tenduke::se::licensing::rest::DescribeLicenseConsumerLicenseesRequest |
CDefaultDescribeLicenseConsumerLicensesRequest | Default implementation of tenduke::se::licensing::rest::DescribeLicenseConsumerLicensesRequest |
CDefaultDescribeLicenseKeyRequest | Default implmentation of tenduke::se::licensing::rest::DescribeLicenseKeyRequest |
CDefaultLicenseCheckoutRequest | Default implementation of tenduke::se::licensing::rest::LicenseCheckoutRequest |
CDefaultLicenseHeartbeatRequest | Default implementation of tenduke::se::licensing::rest::LicenseHeartbeatRequest |
CDefaultLicenseReleaseRequest | Default implementation of tenduke::se::licensing::rest::LicenseReleaseRequest |
CScaleConsumersApi | Low-level license-consumers interface |
CScaleConsumersApiImpl | Default implementation of tenduke::se::licensing::rest::ScaleConsumersApi |
CScaleLicensingApi | Low-level licensing client interface |
CScaleLicensingApiImpl | Default implementation of tenduke::se::licensing::rest::ScaleLicensingApi |
CBaseRequest | High-level licensing client request |
CCheckoutRequest | High level checkout-request |
CDefaultJWTToLease | Default implementation of tenduke::se::licensing::JWTToLease |
CDefaultLeases | Extension of tenduke::se::licensing::SimpleLeases , which adds operation to purge expired leases |
CDefaultLicenseConsumers | Default implementation of tenduke::se::licensing::LicenseConsumers |
CDefaultLicenseTokenToLease | Default implementation of tenduke::se::licensing::LicenseTokenToLease |
CDefaultLicensingClient | Default implementation of tenduke::se::licensing::LicensingClient |
CFluentConsumptionBuilder | Base class for fluent building of license checkout parameters |
CFluentEndMeteredUse | Ends metered license use, building the request fluently |
CFluentHeartbeatBuilder | Base for fluent builder of hearbeat parameters |
CFluentHeartbeatMeteredUse | Heartbeats metered license use, building the request fluently |
CFluentLicenseCheckout | Checks out licenses, building the request fluently |
CFluentLicenseHeartbeat | Heartbeats licenses, building the request fluently |
CFluentLicenseRelease | Releases licenses, building the request fluently |
CFluentReleaseBuilder | Base for fluent builder of release parameters |
CFluentStartMeteredUse | Starts metered license use, building the request fluently |
CHeartbeatRequest | High level heartbeat-request |
CJWTToLease | Converts parsed license token into tenduke::se::licensing::Lease |
CLease | Lease of a license |
CLeases | A read-only lease-cache service |
CLicense | 10Duke Scale license |
CLicenseCheckoutArguments | Describes one license checkout item |
CLicenseCheckoutError | Describes error in checkout at license level |
CLicenseCheckoutParameters | Parameters for license checkout request |
CLicenseCheckoutResponse | Response from license checkout call |
CLicenseConsumer | License consumer |
CLicenseConsumerClientBindingStatus | Result of queries, which describe client bindings |
CLicenseConsumerLicensesStatus | Response from "describe license consumer licenses" |
CLicenseConsumers | Client for working with license-consumer information |
CLicenseConsumptionClientBinding | Licenses that are currently known to be associated with a license consuming user using a specific application on a specific device |
CLicensee | Licensee |
CLicenseFeature | A license feature |
CLicenseHeartbeatArguments | Describes single license lease to heartbeat |
CLicenseHeartbeatError | Describes error in heartbeat at lease-level |
CLicenseHeartbeatParameters | Parameters for license heartbeat request |
CLicenseHeartbeatResponse | Response from license heartbeat call |
CLicenseKey | License key |
CLicenseKeyLicensesStatus | A REST-entity to describe licenses matching a license key |
CLicenseReleaseArguments | Describes single license lease to release |
CLicenseReleaseError | Describes error in license release at lease level |
CLicenseReleaseParameters | Parameters for license release request |
CLicenseReleaseResponse | Response from license release call |
CLicenseReleaseResult | Describes result of release of single license lease |
CLicenseTokenToLease | Converts license token to tenduke::se::licensing::Lease |
CLicensingClient | Client for licensing operations |
CLicensingError | Common base for licensing operation errors (checkout, heartbeat, release) |
CLicensingException | Thrown when something unexpected happened with licensing operations |
CMutableLeases | Service, which extends the readonly cache tenduke::se::licensing::Leases with maintenance operations |
CReleaseRequest | High level release-request |
CSimpleLeases | Base implementation of tenduke::se::licensing::MutableLeases |
CAPIRequest | Interface for 10Duke Scale API-requests |
CBackendConfiguration | Configuration for the 10Duke Scale backend to bootstrap the client |
CClientProperties | Properties of the client ("Client application claims") |
CClientPropertiesBuilder | For building the client properties fluently |
CClientState | Container for client state |
CDeserializeStateFromJSON | Service for deserializing client state from JSON |
CFilter | Filter-definition for the REST-API |
CPaging | Paging-ocnfiguration for the REST-API |
CSerializeStateToJSON | Serializes client state to JSON |
CStatefulAPIRequest | A tenduke::se::APIRequest , which uses tenduke::oidc::OIDCSession to maintain request authorization |
CTendukeClient | Base 10Duke Scale client, usable standalone for licensekey-based operations without user login |
CTendukeClientWithOIDCSession | 10Duke Scale client, which authorizes requests with OIDC/OAuth and maintains the OIDC session state automatically |
CTendukeClientWithOIDCSessionImpl | Implementation of tenduke::se::TendukeClientWithOIDCSession |
►Ntime | Date/time related services |
CClock | A clock-service to generate timestamps |
CDefaultClock | Default implementation tenduke::time::Clock |
►Nutl | Utilities |
►Nrandom | Random number / string generation |
CInsecureRandomBytes | Default implementation of tenduke::utl::random::RandomBytes |
CRandomBytes | Generates random bytes |
CRandomUrlSafeString | Generates string of random URL-safe characters |
Nstring | String-utilities |
CBase64Decoder | Base64-decoder |
CBase64Encoder | Base64-encoder |
CBinaryData | A holder of binary data |
CDefaultBase64Decoder | Default tenduke::utl::Base64Decoder implementation |
CDefaultBase64Encoder | Default tenduke::utl::Base64Encoder implementation |
CFixedSizeBinaryData | Utility class for fixed size binary data |
CSimpleBuffer | Simple extensible binary buffer |
CCanceled | Exception thrown when user has canceled an action |
CInterruptedException | Exception thrown when an action is interrupted for some reason |
CServiceConfiguration | Configuration for supporting services |
CTendukeException | Base class for exceptions thrown by 10Duke C++ clients |
CTendukeServices | A "service locator" for core services used by Tenduke client |
CTimedOut | Exception thrown when an action has timed out |