|
10Duke Scale C++ Client
|
#include <ClientProperties.h>
Properties of the client ("Client application claims")
Depending how your licensing model has been setup, some of these might be mandatory. For example, if hardware concurrency rules have been defined, then cliHwId is mandatory. Otherwise, the properties are optional.
To build the properties fluently use tenduke::se::ClientPropertiesBuilder.
For further information, see section on Client application claims in 10Duke Scale Documentation.
Public Member Functions | |
| ClientProperties (std::string cliCountry, std::string cliHostName, std::string cliHwArch, std::string cliHwId, std::string cliHwLabel, std::string cliInstallationId, std::string cliLang, std::string cliNetworkIpAddress, std::string cliOS, std::string cliOSUserName, std::string cliProcessId, std::string cliVersion, std::string cliKind, std::string licenseConsumerId) | |
| Constructs new instance. | |
Public Attributes | |
| const std::string | cliCountry |
| Country code of OS environment that the client app runs on. | |
| const std::string | cliHostName |
| Hostname of device that the client app runs on. | |
| const std::string | cliHwArch |
| Architecture of of device / platform that the client app runs on. | |
| const std::string | cliHwId |
| Hardware id of device that the client app runs on. | |
| const std::string | cliHwLabel |
| Hardware label of device that the client app runs on. | |
| const std::string | cliInstallationId |
| Installation id the client app. | |
| const std::string | cliLang |
| Language code of the OS environment that the client app runs on. | |
| const std::string | cliNetworkIpAddress |
| The network IP address of the device / platform where the client application runs. | |
| const std::string | cliOS |
| The operating system of the device / platform where the client application runs. | |
| const std::string | cliOSUserName |
| The username for the operating system of the device / platform where the client application runs. | |
| const std::string | cliProcessId |
| Process id of client app process in OS environment that the client app runs on. | |
| const std::string | cliVersion |
| Client app version. | |
| const std::string | cliKind |
| An optional field indicating the general type of the client application. | |
| const std::string | licenseConsumerId |
| Identifier of the license consumer that the license checkout is for. | |
|
inline |
Constructs new instance.
| cliCountry | Country code of OS environment that the client app runs on |
| cliHostName | Hostname of device that the client app runs on |
| cliHwArch | Architecture of of device / platform that the client app runs on |
| cliHwId | Hardware id of device that the client app runs on. This claim is required to implement concurrency rules over a user's devices. |
| cliHwLabel | Hardware label of device that the client app runs on |
| cliInstallationId | Installation id the client app |
| cliLang | Language code of the OS environment that the client app runs on |
| cliNetworkIpAddress | The network IP address of the device / platform where the client application runs. |
| cliOS | The operating system of the device / platform where the client application runs. |
| cliOSUserName | The username for the operating system of the device / platform where the client application runs. |
| cliProcessId | The client process ID. Required when using licenses where the license model enforces the number of concurrent application instances (OS processes running the client application). |
| cliVersion | Client app version. This claim is required to implement rules about allowed versions and enforcing that a license is usable only for certain client application versions. The specified version is compared lexicographically to lower and upper bounds in available licenses. If a license id is used in checkout then the client version must be within the allowed version range in that specific license. Version is enforced only if a license requires so. |
| cliKind | An optional field indicating the general type of the client application. This field helps the API understand the context of the license checkout request and may be used for analytics, logging, and applying specific license consumption policies. Although the information is not required, it is recommended to provide it for enhanced license consumption management. The predefined values are: lls (Local License Server), desktop, mobile, web, server, and iot. Using other values is permitted, but make sure that they adhere to the defined validation rules. If the value is lls, the client hardware ID must be an exact match with the installation ID of an existing Local License Server. (max length: 16) |
| licenseConsumerId | Identifier of the license consumer that the license checkout is for. NOTE: optional only when using OIDC Id Token API authorization |
| const std::string tenduke::se::ClientProperties::cliHwId |
Hardware id of device that the client app runs on.
This claim is required to implement concurrency rules over a user's devices.
| const std::string tenduke::se::ClientProperties::cliKind |
An optional field indicating the general type of the client application.
This field helps the API understand the context of the license checkout request and may be used for analytics, logging, and applying specific license consumption policies. Although the information is not required, it is recommended to provide it for enhanced license consumption management. The predefined values are: lls (Local License Server), desktop, mobile, web, server, and iot. Using other values is permitted, but make sure that they adhere to the defined validation rules. If the value is lls, the client hardware ID must be an exact match with the installation ID of an existing Local License Server. (max length: 16)
| const std::string tenduke::se::ClientProperties::cliProcessId |
Process id of client app process in OS environment that the client app runs on.
This claim is required to implement concurrency rules over a user's application instances (processes).
| const std::string tenduke::se::ClientProperties::cliVersion |
Client app version.
This claim is required to implement rules about allowed versions and enforcing that a license is usable only for certain client application versions. The specified version is compared lexicographically to lower and upper bounds in available licenses. If a license id is used in checkout then the client version must be within the allowed version range in that specific license. Version is enforced only if a license requires so.
| const std::string tenduke::se::ClientProperties::licenseConsumerId |
Identifier of the license consumer that the license checkout is for.
NOTE: optional only when using OIDC Id Token API authorization.