1#ifndef TENDUKE_SE_LICENSING_FLUENTHEARTBEATBUILDER_H
2#define TENDUKE_SE_LICENSING_FLUENTHEARTBEATBUILDER_H
4#include "../../Lease.h"
5#include "./LicenseHeartbeatArguments.h"
12namespace tenduke {
namespace se {
namespace licensing {
20template <
typename Builder>
38 Builder &
lease(const ::tenduke::se::licensing::Lease &
lease)
40 return this->
lease(lease.leaseId);
48 Builder &
leases(
const std::vector<::tenduke::se::licensing::Lease> & licenses)
50 for (
auto const &leaseToHeartbeat : licenses) {
51 lease(leaseToHeartbeat);
53 return static_cast<Builder &
>(*this);
62 Builder &
lease(
const std::string &leaseId)
64 return lease(leaseId, 1,
false);
80 const std::string &leaseId,
82 bool treatAsIncrementalQty =
false
86 treatAsIncrementalQty,
89 return static_cast<Builder &
>(*this);
97 std::vector<::tenduke::se::licensing::LicenseHeartbeatArguments>
arguments;
Base for fluent builder of hearbeat parameters.
Definition FluentHeartbeatBuilder.h:22
FluentHeartbeatBuilder(std::string licenseKey)
Constructs new instance.
Definition FluentHeartbeatBuilder.h:28
Builder & lease(const std::string &leaseId)
Adds a lease id to heart beat.
Definition FluentHeartbeatBuilder.h:62
Builder & leases(const std::vector<::tenduke::se::licensing::Lease > &licenses)
Adds multiple leases to heartbeat.
Definition FluentHeartbeatBuilder.h:48
Builder & lease(const ::tenduke::se::licensing::Lease &lease)
Adds a lease to heartbeat.
Definition FluentHeartbeatBuilder.h:38
const std::string licenseKey
Licensekey.
Definition FluentHeartbeatBuilder.h:94
std::vector<::tenduke::se::licensing::LicenseHeartbeatArguments > arguments
The individual arguments.
Definition FluentHeartbeatBuilder.h:97
Builder & lease(const std::string &leaseId, std::int64_t usedQty, bool treatAsIncrementalQty=false)
Adds a lease id to heartbeat updating usage.
Definition FluentHeartbeatBuilder.h:79
Root for classes, functions and globals of 10Duke C++ Client.
Definition BackendConfiguration.h:7