This class provides support for performing license operations for the session user.

Namespace: ININ.IceLib.People
Assembly: ININ.IceLib.People (in ININ.IceLib.People.dll) Version: 0.0.0.0 (22.3.0.218)

Syntax

C#
public class LicenseManagement
Visual Basic
Public Class LicenseManagement

Remarks

To perform a license operation, create a LicenseRequest object and set the appropriate flag for the requested operation, then call LicenseOperation(IList<(Of <<'(LicenseRequest>)>>)) or LicenseOperationAsync(IList<(Of <<'(LicenseRequest>)>>), EventHandler<(Of <<'(LicenseOperationCompletedEventArgs>)>>), Object) providing a list of LicenseRequest objects. The asynchronous version of this method contains an optional callback function that is invoked when this operation completes. When this operation completes it returns a list of boolean flags indicating success or failure of each LicenseRequest.

This class can be used to query, acquire, release, and replace user licenses as well as to query feature licenses on the IC server.

Note
The document titled IC Licensing Overview provides additional information about licensing. It includes details on IC Server Feature Licenses, IC Client Access Licenses, and steps for configuring and managing license information with Interaction Administrator and the PureConnect License Management Web site.

You will find IC Licensing Overview in the Technical Reference Documents section of the IC Documentation Library on your IC Server.

Examples

CopyC#
...

LicenseRequest request = new LicenseRequest(textBoxLicense.Text, LicenseRequestType.Query);
Collection<LicenseRequest> requests = new Collection<LicenseRequest>();

requests.Add(request);

if (_LicenseManager != null)
{
   _LicenseManager.LicenseOperationAsync(requests, queryLicenseCompleted, textBoxLicense.Text);
}

private void queryLicenseCompleted(object sender, LicenseOperationCompletedEventArgs e)
{
    if (e.Error == null)
    {
        ReadOnlyCollection<bool> results;
        string license;

        string message;

        results = e.LicenseOperationResults;
        license = e.UserState as string;

        if (results[0] == true)
        {
            message = license + " is available for " + m_Session.UserId;
            MessageBox.Show(this, message, "People Client", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
        else
        {
            message = license + " is not available for " + m_Session.UserId;
            MessageBox.Show(this, message, "People Client", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
        }

    }
}

Examples

The IceLib SDK includes example application references to the LicenseManagement class. Some examples are listed below.
ProjectLocation
TutorialExampleSystemStatisticsViewModel.cs, line 58, in SystemStatisticsViewModel.SessionConnectionStateChanged
StatisticCatalogViewModel.cs, line 145, in StatisticCatalogViewModel.SessionConnectionStateChanged

Inheritance Hierarchy

System..::..Object
  ININ.IceLib.People..::..LicenseManagement

Version Information

Supported for IC Server version 2015 R1 and beyond.
For 4.0, supported for IC Server version 4.0 GA and beyond.
For 3.0, supported for IC Server version 3.0 GA and beyond.

See Also