6#include <QtCore/QDateTime>
9#include <iser/IObject.h>
10#include <idoc/IDocumentMetaInfo.h>
13#include <imtbase/IObjectCollection.h>
14#include <imtlic/ILicenseInstanceProvider.h>
59 MIT_PRODUCT_INSTANCE_ID = idoc::IDocumentMetaInfo::MIT_USER + 1000,
62 MIT_PRODUCT_CATEGORY_ID,
76 MIT_HARDWARE_MAC_ADDRESS,
81 MIT_PARENT_INSTANCE_ID
106 const QByteArray& productId,
107 const QByteArray& instanceId,
108 const QByteArray& customerId) = 0;
117 virtual void AddLicense(
const QByteArray& licenseId,
const QDateTime& expirationDate = QDateTime()) = 0;
virtual const imtbase::IObjectCollection * GetCustomerDatabase() const =0
virtual void AddLicense(const QByteArray &licenseId, const QDateTime &expirationDate=QDateTime())=0
virtual QByteArray GetSerialNumber() const =0
virtual void RemoveLicense(const QByteArray &licenseId)=0
virtual bool IsInternalUse() const =0
virtual void SetupProductInstance(const QByteArray &productId, const QByteArray &instanceId, const QByteArray &customerId)=0
virtual QByteArray GetProject() const =0
virtual bool IsMultiProduct() const =0
virtual void SetInternalUse(bool internalUse)=0
virtual int GetProductCount() const =0
virtual QByteArray GetProductId() const =0
virtual void SetInUse(bool inUse)=0
virtual void SetProductCount(int count)=0
virtual QByteArray GetParentInstanceId() const =0
virtual void SetProject(const QByteArray &project)=0
virtual void ClearLicenses()=0
virtual const imtbase::IObjectCollection * GetProductDatabase() const =0
virtual void SetMultiProduct(bool isMulti)=0
virtual void SetSerialNumber(const QByteArray &serialNumber)=0
virtual QByteArray GetProductInstanceId() const =0
virtual void SetProductInstanceId(const QByteArray &instanceId)=0
virtual bool IsInUse() const =0
virtual void SetParentInstanceId(const QByteArray &parentInstanceId)=0
virtual QByteArray GetCustomerId() const =0
Core licensing domain model providing feature-based product licensing and instance management.