Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The following example shows a token-based license for the license pool scenario described above, where MySolutions is a license pool that is drawn upon to fulfill license requests for MyDraw, MyWrite and MySpreadsheet.

FEATURE MySolutions
{
VENDOR = ABC_Software
COUNT = 20
KEYTYPE = EXCLUSIVE
MAJOR_VERSION = 1
MINOR_VERSION = 2
KEY = GTLP4FLUFFDFJB3N87SEVB224G0TJKKP
}
FEATURE MyDraw
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 1
MINOR_VERSION = 0
TOKEN_DEPENDENCY = "FEATURE=MySolutions VERSION=1.0 COUNT=5"
KEY = PTZH9BTWNTLFJHH862IOAF39NHIM9HVB
}
FEATURE MyWrite
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 1
MINOR_VERSION = 0
TOKEN_DEPENDENCY = "FEATURE=MySolutions VERSION=1.0 COUNT=2"
KEY = KW1OPU87VNUAA9ZI2NMBP9721EEU2
}
FEATURE MySpreadsheet
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 1
MINOR_VERSION = 0
TOKEN_DEPENDENCY = "FEATURE=MySolutions VERSION=1.0 COUNT=1"
KEY = PO3OP36RLTATVFHOT3H4RONIOV257L98
}

Product suite licenses

Product suite licenses specify that one token-based license depends on multiple real licenses. Product suite licenses enforce a logical AND rule, requiring all licenses to be valid in order to perform a checkout. This is essentially the opposite of license pools, which specify that multiple features depend on a single real license. 

For example, MyDraw may be composed of two modules: Sketcher and Printer. A token-based license can specify that in order to use MyDraw, you must have 1 license of each of the two modules.

...

The following example shows a token-based license for the product suite license scenario described above.

FEATURE Sketcher
{
VENDOR = ABC_Software
COUNT = 5
KEYTYPE = EXCLUSIVE
MAJOR_VERSION = 2
MINOR_VERSION = 0
KEY = GTLP4FLUFFDFJB3N87SEVB224G0TJKKP
}
FEATURE Printer
{
VENDOR = ABC_Software
COUNT = 5
KEYTYPE = EXCLUSIVE
MAJOR_VERSION = 1
MINOR_VERSION = 5
KEY = HEN3CRJ8VOI6FS5L25KKB0QLRJD3CE4O
}
FEATURE MyDraw
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 1
MINOR_VERSION = 2
TOKEN_DEPENDENCY = "FEATURE=Sketcher VERSION=2.0 COUNT=1"
TOKEN_DEPENDENCY = "FEATURE=Printer VERSION=1.5 COUNT=1"
KEY = ALPO3OP36RLTATVFHOT3H4RONIOV257L
}

Alternate licenses

You can use token-based licenses to allow license requests to be fulfilled by one or more alternate product licenses. This enforces a logical OR rule, since it requires one license or another to succeed with a checkout.

...

The following example shows a license for the alternate license scenario described above. Note that the first MyDraw token-based license refers to Lower_Priced_License, so this will be the preferred license for MyDraw checkout requests.

FEATURE Lower_Priced_License
{
VENDOR = ABC_Software
COUNT = 5
KEYTYPE = EXCLUSIVE
MAJOR_VERSION = 1
MINOR_VERSION = 0
KEY = CTLF6UIWOPPQYH35Q7WPYB7W2NH68JI9
}
FEATURE Higher_Priced_License
{
VENDOR = ABC_Software
COUNT = 10
KEYTYPE = EXCLUSIVE
MAJOR_VERSION = 1
MINOR_VERSION = 0
KEY = AP1FYIS98WPN2UIP99QSVUIPA4EEOV26
}
FEATURE MyDraw
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 1
MINOR_VERSION = 0
TOKEN_DEPENDENCY = "FEATURE=Lower_Priced_License VERSION=1.0 COUNT=5"
KEY = HEN3CRJ8VOI6FS5L25KKB0QLRJD3CE4O
}
FEATURE MyDraw
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 1
MINOR_VERSION = 0
TOKEN_DEPENDENCY = "FEATURE=Higher_Priced_License VERSION=1.0 COUNT=10"
KEY = ALF5HUJ9VCQ6HSNL42MLT0VLMJC3PDMM
}

Cascading (recursive) licenses

...

The following example shows a token-based license for the cascading license scenario described above.

FEATURE Sketcher
{
VENDOR = ABC_Software
COUNT = 10
KEYTYPE = EXCLUSIVE
MAJOR_VERSION = 1
MINOR_VERSION = 0
KEY = GTLP4FLUFFDFJB3N87SEVB224G0TJKKP
}
FEATURE MyDraw
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 2
MINOR_VERSION = 0
TOKEN_DEPENDENCY = "FEATURE=Sketcher VERSION=1.0 COUNT=2"
KEY = HEN3CRJ8VOI6FS5L25KKB0QLRJD3CE4O
}
FEATURE MyWrite
{
VENDOR = ABC_Software
KEYTYPE = TOKEN
MAJOR_VERSION = 2
MINOR_VERSION = 0
TOKEN_DEPENDENCY = "FEATURE=MyDraw VERSION=2.0 COUNT=1"
KEY = ALPO3OP36RLTATVFHOT3H4RONIOV257L
}