|
ImagingTools Core SDK
|
Interface for license definition information. More...
#include <ILicenseDefinition.h>
Public Types | |
| enum | MetaInfoTypes { MIT_LICENSE_NAME = idoc::IDocumentMetaInfo::MIT_USER + 1 , MIT_LICENSE_ID , MIT_LICENSE_DESCRIPTION , MIT_PRODUCT_ID } |
Public Member Functions | |
| virtual QString | GetLicenseName () const =0 |
| virtual void | SetLicenseName (const QString &licenseName)=0 |
| virtual QByteArray | GetLicenseId () const =0 |
| virtual void | SetLicenseId (const QByteArray &licenseId)=0 |
| virtual QString | GetLicenseDescription () const =0 |
| virtual void | SetLicenseDescription (const QString &licenseDescription)=0 |
| virtual QByteArray | GetProductId () const =0 |
| virtual void | SetProductId (const QByteArray &productId)=0 |
| virtual QByteArrayList | GetDependencies () const =0 |
| virtual void | SetDependencies (QByteArrayList dependencies)=0 |
| virtual FeatureInfos | GetFeatureInfos () const =0 |
| virtual void | SetFeatureInfos (const FeatureInfos &featureInfos)=0 |
Interface for license definition information.
A License Definition represents a specific license type that can be purchased and activated for a product. It serves as a "container of Features" - defining which features will be unlocked when this license is activated.
License Definition as Feature Container:**
Relationship Model:**
Create License Definition with unique ID
Tiered Licensing:**
Feature-Based Licensing:**
Hardware-Bound Licensing:**
Licenses can depend on other licenses:
Dependency Validation:**
License valid only if all dependencies satisfied
Use Cases:**
Adding Features to License:**
Querying License Features:**
Checking Feature Inclusion:**
License Definitions support meta-information:
Validation Steps:**
Unlock features if valid
License Status:**
Creating a License Definition:**
Checking License Features:**
Creating License Instance:**
License Design:**
Consider upgrade paths between licenses
Feature Assignment:**
Avoid feature fragmentation
Dependency Management:**
Consider circular dependency prevention
Product Integration:**
Definition at line 280 of file ILicenseDefinition.h.
Definition at line 283 of file ILicenseDefinition.h.
|
pure virtual |
Get the list of licenses that this license depends on. Dependent licenses must be activated before this license can be used.
|
pure virtual |
Get the list of features that this license unlocks. This defines which product capabilities are enabled when this license is activated.
|
pure virtual |
Get the detailed description of the license.
|
pure virtual |
Get the license ID used for identification during license validation. This ID is used by the rights provider system to check license validity.
|
pure virtual |
Get the human-readable name of the license.
|
pure virtual |
Get the product ID that this license belongs to.
|
pure virtual |
Set the license dependencies.
| dependencies | List of license IDs that must be active for this license to work |
|
pure virtual |
Set the list of features that this license unlocks.
| featureInfos | List of features enabled by this license |
|
pure virtual |
Set the description of the license.
| licenseDescription | Detailed description of the license |
|
pure virtual |
Set the unique ID of the license.
| licenseId | Unique identifier for license validation |
|
pure virtual |
Set the name of the license.
| licenseName | Human-readable name for this license |
|
pure virtual |
Set the product ID that this license belongs to.
| productId | ID of the associated product |