Using LexFloatClient with Go
Adding licensing to your app
After you've added a product for your app in the admin portal, you will need to do the following things:
Note the product id for the product (from the actions menu in the table).
Download the example project from Github
The product id is the identifier of your product that is to be used in the code. The product id of the LexFloatServer and LexFloatClient must match.
Adding the library to your app
LexFloatClient wrapper for Go can be easily installed using the go get command:
Note: In case you are using Windows, execute the following command after installation:
This would copy the LexFloatClient.dll to your project directory.
LexFloatClient has a dependency on VS2015
runtime on Windows. On the target machines where you will deploy your app, you can install the VS2015
runtime, if not present, using the link: https://www.microsoft.com/en-in/download/details.aspx?id=48145
This package relies on cgo
to interface with a C library. As a result, cgo
must be enabled when building and using this package. Disabling cgo
(e.g., by setting CGO_ENABLED=0
) will result in compilation errors.
Setting product id
The first LexFloatClient API function you need to use in your code is SetHostProductId()
. It sets the product id of the product you will be adding licensing to.
Requesting floating license
To receive a floating license, you will use SetHostUrl()
, SetFloatingLicenseCallback()
and RequestFloatingLicense()
LexFloatClient API methods. It sets the LexFloatServer address, the callback for status notifications, contacts the server and receives the floating license.
The above code can be executed every time user starts the app or needs a new license.
Renewing floating license
License lease automatically renews itself in a background thread. When a license is renewed or fails to renew, the callback is invoked (from the background thread).
Dropping floating license
When your user is done using the app, the app should send a request to free the license, thereby making it available to other users. If the app doesn't, the license becomes useless (zombie) until lease time is over.
The above code should be executed every time user closes the app.
Need more help
In case you need more help with adding LexFloatClient to your app, we'll be glad to help you make the integration. You can either post your questions on our support forum or can contact us through email.
Last updated