1#ifndef LS_CONFIGURATION_H
2#define LS_CONFIGURATION_H
7#pragma warning(disable : 4251)
21 using ptr_t = std::shared_ptr<Configuration>;
38 static ptr_t Create(
const std::string &apiKey,
const std::string &sharedKey,
39 const std::string &productCode,
const std::string &appName,
const std::string &appVersion,
54 const std::string &productCode,
const std::string &appName,
const std::string &appVersion,
259 std::string m_apiKey;
260 std::string m_sharedKey;
261 std::string m_clientId;
262 std::string m_clientSecret;
263 std::string m_productCode;
264 std::string m_customerAccount;
265 std::string m_appName;
266 std::string m_appVersion;
267 std::string m_userInfo;
268 std::string m_airGapPublicKey;
DeviceIDAlgorithm
Type of Device ID algorithm used by the SDK.
Class for configuring application.
std::shared_ptr< Configuration > ptr_t
const std::string & getAirGapPublicKey() const
Getter for air gap public key.
bool isVM() const
Checker for whether the user is on a virtual machine.
bool isOAuth() const
Checker if authn is done with OAuth.
const std::string & getApiKey() const
Getter for API key (UUID).
const std::string & getIP() const
Getter for IP Address.
void setDeviceIdAlgorithm(DeviceIDAlgorithm algorithm)
Setter for DeviceIDAlgorithm.
const std::string & getAppName() const
Getter for application name.
bool isCollectNetworkInfoEnabled() const
Checker for if collection of network information is enabled in ExtendedOptions.
const NetworkInfo & getNetworkInfo() const
Getter for Network Information.
long getNetworkTimeout() const
Getter for network timeout.
uint32_t getGracePeriod() const
Getter for grace period.
long getConnectTimeout() const
Getter for connect timeout, used for CURLOPT_CONNECTTIMEOUT option.
CryptoProvider::ptr_t getCryptoProvider()
Getter for crypto provider.
const std::string & getClientId() const
Getter for OAuth client ID.
void setConnectTimeout(long timeoutValue)
Setter for connect timeout, used for CURLOPT_CONNECTTIMEOUT option.
const ProxySettings & getProxySettings() const
Getter for ProxySettings object.
const std::wstring & getLicenseFilePath() const
This method is obsolete! Return license file path that was set through ExtendedOptions or empty strin...
const std::string & getHardwareID()
Getter for device id.
bool isLoggingEnabled() const
Checker for if logging is enabled in ExtendedOptions.
const std::string & getSdkVersion() const
Getter for LicenseSpring SDK version.
Configuration()=default
Constructor for internal needs, use Create instead.
const std::string & getMAC() const
Getter for MAC Address.
void setUserInfo(const std::string &customInfo)
Set custom information to be passed to the backend with all API requests.
bool isGuardFileEnabled() const
Checker for whether guard file usage is enabled in ExtendedOptions.
const std::string & getOsVersion() const
Getter for Operating System version.
bool isLicenseCorruptionCheckEnabled() const
Checker for whether encrypted license data corruption checking is enabled or not.
void setHardwareID(const std::string &deviceId)
Setter for device id.
const std::string & getUserInfo() const
Returns custom information to be passed along with all API requests.
void setCustomerAccount(const std::string &accountCode)
Set customer group (account) code that is required for SSO.
const std::string & getSharedKey() const
Getter for shared key.
bool isNativeTLSEnabled() const
Checker for whether native TLS for curl enabled or not.
const std::string & getHostName() const
Getter for Host Name.
bool isSSLCheckEnabled() const
Checker for whether SSL certificate verification is enabled.
const std::string & getDetectedVMName() const
Getter for hypervisor name, calls isVM first if not yet called.
const std::string & getAlternateKey() const
Getter for alternate public key.
static ptr_t CreateOAuth(const std::string &clientId, const std::string &clientSecret, const std::string &productCode, const std::string &appName, const std::string &appVersion, const ExtendedOptions &extendedOptions=ExtendedOptions())
Creates shared pointer for configuration object, used for OAuth authentication.
bool isVMDetectionEnabled() const
Checker for whether Virtual Machine Detection is enabled.
const std::string & getAlternateServiceUrl() const
Getter for alternate service URL.
void setAirGapPublicKey(const std::string &key)
Setter for air gap public key.
const std::string & getAppVersion() const
Getter for application version.
const std::string & getCustomerAccount() const
Returns customer group (account) code that is required for SSO.
const std::string & getClientSecret() const
Getter for OAuth client secret.
static ptr_t Create(const std::string &apiKey, const std::string &sharedKey, const std::string &productCode, const std::string &appName, const std::string &appVersion, const ExtendedOptions &extendedOptions=ExtendedOptions())
Creates shared pointer for configuration object, used for standard authentication with API and shared...
void setNetworkTimeout(long timeoutValue)
Setter for network timeout.
uint32_t getLicenseSpringAPIVersion() const
Getter for LicenseSpring API version.
const std::string & getProductCode() const
Getter for product code.
std::shared_ptr< CryptoProvider > ptr_t
Class for storing useful settings that the Configuration object will inherit.
Class for storing a device's network information.
Class for storing settings when using a proxy server.