26#include <olp/core/porting/optional.h>
27#include <olp/dataservice/read/DataServiceReadApi.h>
30namespace dataservice {
53 start_version_ = version;
81 end_version_ = version;
117 template <
class T = porting::optional<std::
string>>
119 billing_tag_ = std::forward<T>(tag);
134 billing_tag_ = std::move(tag);
144 std::stringstream out;
146 out << GetStartVersion() <<
", " << GetEndVersion();
148 if (GetBillingTag()) {
149 out <<
"$" << *GetBillingTag();
155 std::int64_t start_version_ = -1;
156 std::int64_t end_version_ = -1;
157 porting::optional<std::string> billing_tag_;
Encapsulates the fields required to request a list of versions for the given catalog.
Definition VersionsRequest.h:37
std::int64_t GetStartVersion() const
Gets the catalog metadata start version of the requested versions list.
Definition VersionsRequest.h:64
VersionsRequest & WithEndVersion(std::int64_t version)
Sets the catalog metadata end version.
Definition VersionsRequest.h:80
std::string CreateKey() const
Creates a readable format for the request.
Definition VersionsRequest.h:143
VersionsRequest & WithBillingTag(T &&tag)
Sets the billing tag for the request.
Definition VersionsRequest.h:118
const porting::optional< std::string > & GetBillingTag() const
Gets the billing tag to group billing records together.
Definition VersionsRequest.h:104
VersionsRequest & WithBillingTag(std::string tag)
Sets the billing tag for the request.
Definition VersionsRequest.h:133
VersionsRequest & WithStartVersion(std::int64_t version)
Sets the catalog metadata start version.
Definition VersionsRequest.h:52
std::int64_t GetEndVersion() const
Gets the catalog metadata end version of the requested versions list.
Definition VersionsRequest.h:92
Rules all the other namespaces.
Definition AppleSignInProperties.h:24