10Duke Scale C++ Client
Loading...
Searching...
No Matches
FluentConsumptionBuilder< Builder > Class Template Reference

#include <FluentConsumptionBuilder.h>

Detailed Description

template<typename Builder>
class FluentConsumptionBuilder< Builder >

Base class for fluent building of license checkout parameters.

Template Parameters
Builderthe concrete builder instance (for inheritance)

Public Member Functions

 FluentConsumptionBuilder (std::string licenseKey)
 Constructs new instance.
 
Builder & seats (const std::string &pProductName, std::int64_t numSeats)
 Start building a license-consumption for seats.
 
Builder & seat (const std::string &pProductName)
 Start building a license-consumption for one seat.
 
Builder & count (const std::string &pProductName, std::int64_t useCount)
 Start building a license consumption for use count.
 
Builder & count (const std::string &pProductName)
 Starts building a license consumption for one use count.
 
Builder & time (const std::string &pProductName, std::int64_t useTime)
 Starts building a license consumption of use time.
 
Builder & version (const std::string &pClientVersion)
 Set the client version.
 

Constructor & Destructor Documentation

◆ FluentConsumptionBuilder()

template<typename Builder>
tenduke::se::licensing::FluentConsumptionBuilder< Builder >::FluentConsumptionBuilder ( std::string licenseKey)
inlineexplicit

Constructs new instance.

Parameters
licenseKey-

Member Function Documentation

◆ count() [1/2]

template<typename Builder>
Builder & tenduke::se::licensing::FluentConsumptionBuilder< Builder >::count ( const std::string & pProductName)
inline

Starts building a license consumption for one use count.

Parameters
pProductName-
Returns
this instance for fluent method chaining

◆ count() [2/2]

template<typename Builder>
Builder & tenduke::se::licensing::FluentConsumptionBuilder< Builder >::count ( const std::string & pProductName,
std::int64_t useCount )
inline

Start building a license consumption for use count.

Parameters
pProductName-
useCount-
Returns
this instance for fluent method chaining

◆ seat()

template<typename Builder>
Builder & tenduke::se::licensing::FluentConsumptionBuilder< Builder >::seat ( const std::string & pProductName)
inline

Start building a license-consumption for one seat.

Parameters
pProductName-
Returns
this instance for fluent method chaining

◆ seats()

template<typename Builder>
Builder & tenduke::se::licensing::FluentConsumptionBuilder< Builder >::seats ( const std::string & pProductName,
std::int64_t numSeats )
inline

Start building a license-consumption for seats.

Parameters
pProductName-
numSeats-
Returns
this instance for fluent method chaining

◆ time()

template<typename Builder>
Builder & tenduke::se::licensing::FluentConsumptionBuilder< Builder >::time ( const std::string & pProductName,
std::int64_t useTime )
inline

Starts building a license consumption of use time.

Parameters
pProductName-
useTime-
Returns
this instance for fluent method chaining

◆ version()

template<typename Builder>
Builder & tenduke::se::licensing::FluentConsumptionBuilder< Builder >::version ( const std::string & pClientVersion)
inline

Set the client version.

If set before any license item definition (building of which start with methods like FluentConsumptionBuilder::seat(), FluentConsumptionBuilder::seats() and so on), it sets default version. The default version is applied on every license to check out unless overridden at license level by calling the method again.

If called after item definition, then sets version of the given item. For example:

builder
.version("1.0.0") // default version
.seat("product-1") // uses default version (1.0.0)
.seat("product-2").version("2.0.0) // uses version 2.0.0
.seat("product-3") // uses default version (1.0.0)
...
Parameters
pClientVersion-
Returns
this instance for fluent method chaining

The documentation for this class was generated from the following file: