TLicenseProduct

The concrete class TLicenseProduct represents a product that is licensed through the Licensing framework. The licensed product is designated by its unique vendorIdentifier,productIdentifier,productVersion triplet. The vendor identifier in the triplet is the same identifier discussed in "TLicenseVendor" on page 140. The product identifier portion of the triplet should be constructed using an algorithm guaranteed to refer uniquely to only one product from this vendor.

The exact algorithms for generating the product identifier and product version are left up to the vendor. For the identifier, the following choices are appropriate:

The TLicenseProduct class also maintains a Product Name object that should contain the human readable and localized description of the licensed product.

      class TLicenseProduct : public MCollectible {
      //    Copyright (C) 1995 Taligent, Inc. All rights reserved.
      public:
          //.................................................................
          //  Constructors and destructor
                              TLicenseProduct();
                              TLicenseProduct(const TLicenseProduct& source);
                              TLicenseProduct(const TLicenseVendorIdentifier& vendorIdentifier,
                                          const TLicenseProductIdentifier& productIdentifier,
                                          const TLicenseVersion productVersion
                                          const TText& productName);
          virtual             ~TLicenseProduct();
          
          //.................................................................
          //  operator overloads.
          TLicenseProduct&    operator=   (const TLicenseProduct& source);
          
          //.................................................................
          //  MCollectible overrides.
          virtual TStream&    operator<<= (TStream& fromWhere);
          virtual TStream&    operator>>=(TStream& toWhere) const;
      
          //.................................................................
          //  TLicenseProduct specific operations.
          virtual void        GetVendorIdentifier(TLicenseVendorIdentifier& target) const;
          virtual void        GetProductIdentifier(TLicenseProductIdentifier& target) const;
          virtual void        GetProductVersion(TLicenseVersion& target) const;
          virtual void        GetProductName  (TText& target) const;
              
      private:
      };

Instantiation

Allocate on the heap or stack.
TLicenseProduct is safe to allocate at static constructor time as long as TStandardText remains safe as well.

Member functions

GetVendorIdentifier gets the licensed product vendor's unique identifier.

GetProductIdentifier gets the licensed product's unique identifier.

GetProductVersion gets the licensed product's version.

GetProductName gets the human readable and localized name of the licensed product.

Deriving classes

TLicenseProduct is not designed for deriving classes.

Concurrency

TLicenseProduct is not designed for concurrent access.

Resource use

No special requirements.

Supporting Classes

The following basic types are supported by TLicenseProduct:


[Contents] [Previous] [Next]
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.

Generated with WebMaker