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

FloatingClient.h
Go to the documentation of this file.
1 #ifndef LS_FLOATING_CLIENT_H
2 #define LS_FLOATING_CLIENT_H
3
4 #ifdef _MSC_VER
5 #pragma once
6 #pragma warning( push )
7 #pragma warning( disable : 4251 )
8 #endif
9
10 #include "License.h"
11 #include "BaseManager.h"
12 #include "FloatingServerInfo.h"
13
14 namespace LicenseSpring
15 {
18 class LS_API FloatingClient : public BaseManager
19 {
20 public:
21 using ptr_t = std::shared_ptr<FloatingClient>;
22
28 static FloatingClient::ptr_t create( Configuration::ptr_t config, LicenseStorage::ptr_t storage = nullptr );
29
34 FloatingClient( Configuration::ptr_t config, LicenseStorage::ptr_t storage );
35
37 ~FloatingClient() override;
38
52 const License::ptr_t registerLicense( const std::string& id, const LicenseID& licenseID = LicenseID() );
53
59 const License::ptr_t borrowLicense( const std::string& id, const std::string& borrowEndDateTime = std::string() );
60
69 bool unregisterLicense( const std::string& id, const LicenseID& licenseID = LicenseID() );
70
78 bool isOnline( bool throwExceptions = false ) const;
79
87 FloatingServerInfo::ptr_t getServerInfo();
88 };
89 }
90
91 #ifdef _MSC_VER
92 #pragma warning( pop )
93 #endif
94
95 #endif // LS_FLOATING_CLIENT_H
LicenseSpring::FloatingClient
Class for performing requests to LicenseSpring Floating server.
Definition: FloatingClient.h:18
BaseManager.h
LicenseSpring
Definition: BaseManager.h:15
LicenseSpring::Configuration::ptr_t
std::shared_ptr< Configuration > ptr_t
Definition: Configuration.h:20
LicenseSpring::LicenseStorage::ptr_t
std::shared_ptr< LicenseStorage > ptr_t
Definition: LicenseStorage.h:19
LicenseSpring::BaseManager
Base class for license management.
Definition: BaseManager.h:23
LicenseSpring::FloatingClient::ptr_t
std::shared_ptr< FloatingClient > ptr_t
Definition: FloatingClient.h:21
LicenseSpring::License::ptr_t
std::shared_ptr< License > ptr_t
Definition: License.h:36
FloatingServerInfo.h
LicenseSpring::FloatingServerInfo::ptr_t
std::shared_ptr< FloatingServerInfo > ptr_t
Definition: FloatingServerInfo.h:22
License.h
LS_API
#define LS_API
Macros that expands to dllexport, dllimport or nothing on non Windows platforms or in case of static ...
Definition: APIDef.h:22
LicenseSpring::LicenseID
Class that represents License identifier.
Definition: LicenseID.h:18