| LicenseSpring C++ SDK 7.27.0 Easily add Software Licensing to your application

Classes | Typedefs | Enumerations | Functions | Variables
LicenseSpring Namespace Reference

## Classes
class | AirGapActivationException
| Throws when confirmation code from the air gap activation portal is invalid. More...
class | ApiKeyException
| This exception can arise if provided api key cannot be used for the request. More...
class | AuthorizationException
| Authorization failed, please check your proxy settings. More...
class | BaseManager
| Base class for license management. More...
class | BorrowLicenseException
| This exception can arise if provided borrowing period bigger than max possible. Or if license borrowing is not allowed. More...
class | CannotBeActivatedNowException
| Can be thrown if start date field is set for the license and current date is behind start date. More...
class | ClockTamperedException
| This exception means that detected that system clock has been set back. More...
class | Configuration
| Class for configuring application. More...
class | ConfigurationException
| Throws in case of something wrong with Configuration. E.g. wrong API or Shared key. More...
class | ConsumptionPeriod
| Class used for encapsulating LSConsumptionPeriod and converting cosumption period to/from string. More...
class | CryptoProvider
| CryptoProvider interface. More...
class | Customer
| Class that encapsulates information about a customer. More...
class | CustomField
| Class for storing key-value data field. More...
class | DefaultCryptoProvider
| If no CryptoProvider is set, this is the default CryptoProvider that will be used. More...
class | DeviceBlacklistedException
| This exception can arise during license check if device has been blacklisted by Product manager. More...
class | DeviceNotLicensedException
| Throws in case computer hardware configuration has been changed or license does not belong to this computer. More...
class | DeviceVariable
| Class for storing key-value device variable. More...
class | ExtendedOptions
| Class for storing useful settings that the Configuration object will inherit. More...
class | FileStorageWithLock
| Class that saves license in a file, derived from `LicenseFileStorageBase` class. More...
class | FloatingClient
| Class for performing requests to LicenseSpring Floating server. More...
class | FloatingServerInfo
| Class that encapsulates information on Floating server settings. More...
class | FloatingTimeoutExpiredException
| Throws in case floating license timeout or borrowing period is expired and it needs to be registered. More...
class | InstallationFile
| Class that represents information on product installation file. More...
struct | InstallFileFilter
| Helper struct for filtering installation files by environment and channel. More...
class | InvalidCredentialException
| This exception means that user or password is wrong. More...
class | InvalidLicenseFeatureException
| Throws when product feature does not exist or wrong feature type. More...
class | InvalidOrderIDException
| Throws when order with specified ID already exists and ShouldAppend flag set to false. More...
class | License
| Class that encapsulates license information. More...
class | LicenseActivationException
| Rare exception, can arise if activation is limited to some device count or license transfer is prohibited. More...
class | LicenseFeature
| Class that encapsulates information about license feature. More...
class | LicenseFileStorage
| Class that saves license in a file, derived from `LicenseFileStorageBase` class. More...
class | LicenseFileStorageBase
| Base class that saves license in a file, implements `ILicenseStorage` interface. More...
class | LicenseFileStorageEx
| Class that saves license in a file, derived from `LicenseFileStorageBase` class. More...
class | LicenseHandler
| This class encapsulates functionality of the both LicenseManager and the License. . More...
class | LicenseID
| Class that represents License identifier. More...
class | LicenseManager
| Class for performing basic requests to LicenseSpring backend and managing licenses. More...
class | LicenseMemoryStorage
| Simple class that saves license in a variable, implements `LicenseStorage` interface. More...
class | LicenseNoAvailableActivationsException
| Throws when license has already been activated maximum number of times. More...
class | LicenseNotFloatingException
| This exception can arise during floating license registration on floating server. More...
class | LicenseNotFoundException
| Throws in case license not found on the server. More...
class | LicenseServerException
| Indicates internal server error, please contact support if you face this exception. More...
class | LicenseSpringException
| Base class for all LicenseSpring exceptions. More...
class | LicenseSpringInternalException
| Please, contact support or try to update SDK if you got this exception. Normally should never happen. More...
class | LicenseStateException
| Throws in case license is in invalid state (disabled, epired or inactive). More...
class | LicenseStorage
| LicenseStorage interface. More...
class | LicenseType
| Class used for encapsulating the type of license, comparing types of licenses, and converting them to strings. More...
class | LicenseUser
| Class that encapsulates information about a license user. More...
class | LocalLicenseException
| This exception means that SDK could not read or write license to the storage. More...
class | MaxFloatingReachedException
| This exception can arise during online check of floating license if reached maximum users count for the license. More...
class | MissingEmailException
| Throws when email is missing in API call for user-based product, probably attempt to get trial license without email (user id). More...
class | MSVersion
| Simple class for handling app versions in Microsoft specific file and assembly version format. Format: Major.Minor.Build.Revision, where all parts are integer numbers. In case you use such version format without alphabetical symbols then it fits your needs. For example: "1.3.4573.1", "2.13.3735.0". More...
class | NetworkInfo
| Class for storing a device's network information. More...
class | NetworkTimeoutException
| This exception means that network operation timed out. More...
class | NoInternetException
| This exception means that SDK cannot reach the server. Because of no internet connection, DNS issues, etc. More...
class | NotEnoughConsumptionException
| This exceptions means that Consumption license or feature ran out of resources. More...
class | PasswordChangeNotAllowedException
| This exception can arise if password change is restricted by company policy. More...
class | ProductDetails
| Class that encapsulates information about a product. More...
class | ProductMismatchException
| This exceptions means that license product code doesn't correspond to configuration product code. More...
class | ProductNotFoundException
| Throws in case product not found on the server. More...
class | ProductVersionException
| Throws in case installation file not found for requested app version. More...
class | ProxySettings
| Class for storing settings when using a proxy server. More...
class | RequestDateInvalidException
| This exception can arise if system date time on the current device is incorrectly set. More...
class | SignatureMismatchException
| Throws in case signature returned by LicenseSpring server is not valid. More...
class | SSOException
| This exception can arise if the backend cannot create URL for Single sign-on (SSO) More...
class | SSOTokenException
| This exception can arise if token for Single sign-on (SSO) is invalid or expired. More...
class | TrialNotAllowedException
| Can be thrown in case getting trial licenses is restricted by product license policy. More...
class | UnknownLicenseSpringException
| In case LicenseSpring backend returns unexpected error or something went wrong. More...
class | Version
| Simple class for handling app versions. Format: Major.Minor.Patch.Build, where all parts are integer numbers. In case you use such version format without alphabetical symbols then it fits your needs. For example: "1.3.0.45", "2.13.1.3735". More...
class | VersionBase
| Base class for handling app versions. Contains common functionality for version classes hierarchy. More...
class | VersionEx
| Extended class for handling app versions, compliant with Semantic Versioning 2.0.0 Format: Major.Minor.Patch[PrereleaseIdentifier].Build[BuildMetadata], see https://semver.org For example: "1.3.4573-alpha.3+sha:dff8df7gdsvnx", "2.13.3735b2.0-stable". More...
class | VMDNotAvailableException
| Windows only. In case VM detection dll not found, tempered or detection failed. More...
class | VMIsNotAllowedException
| This exception can arise on virtual machine when VM detection is enabled but product policy prohibits running on VM. More...
class | WatchdogException
| This exception can arise if setting license watchdog failed. More...
class | Xor_string

## Typedefs
using | LicenseWatchdogCallback = std::function< void(const LicenseSpringException &ex)>
| Callback function which being called in case of error in background thread (watchdog thread). More...

## Enumerations
enum | PrereleaseType : std::uint8_t { PrereleaseType::alpha = 0, PrereleaseType::beta = 1, PrereleaseType::rc = 2, PrereleaseType::none = 3 }

## Functions
constexpr unsigned long long | linear_congruent_generator (unsigned rounds)
template<typename Char >
constexpr Char | encrypt_character (const Char character, int index)
std::string LS_API | TmToString (const tm &dateTime, const std::string &format=std::string("%d-%m-%Y"))
| Helper function, converts datetime to string using given format. See strftime reference for format details. More...
LS_API std::ostream & | operator<< (std::ostream &out, const VersionBase &version)

## Variables
constexpr const unsigned long long | XORKEY = XSTR_RANDOM_NUMBER(0, 0xFF)

## Typedef Documentation

## ◆ LicenseWatchdogCallback

using LicenseSpring::LicenseWatchdogCallback = typedef std::function<void( const LicenseSpringException& ex )>

Callback function which being called in case of error in background thread (watchdog thread).

Definition at line 29 of file License.h.

## Enumeration Type Documentation

## ◆ PrereleaseType

enum LicenseSpring::PrereleaseType : std::uint8_t
| strong

Enumerator
alpha |
beta |
rc |
none |

Definition at line 134 of file Version.h.

## Function Documentation

## ◆ linear_congruent_generator()

constexpr unsigned long long LicenseSpring::linear_congruent_generator | ( | unsigned | rounds | ) |

Definition at line 28 of file EncryptString.h.

## ◆ encrypt_character()

template<typename Char >

constexpr Char LicenseSpring::encrypt_character | ( | const Char | character,
|  | int | index
| ) |  |

Definition at line 44 of file EncryptString.h.

## ◆ TmToString()

std::string LS_API LicenseSpring::TmToString | ( | const tm & | dateTime,
|  | const std::string & | format = `std::string("%d-%m-%Y")`
| ) |  |

Helper function, converts datetime to string using given format. See strftime reference for format details.

## ◆ operator<<()

LS_API std::ostream& LicenseSpring::operator<< | ( | std::ostream & | out,
|  | const VersionBase & | version
| ) |  |

## Variable Documentation

## ◆ XORKEY

constexpr const unsigned long long LicenseSpring::XORKEY = XSTR_RANDOM_NUMBER(0, 0xFF)

Definition at line 40 of file EncryptString.h.