7#include <aws/meteringmarketplace/MarketplaceMetering_EXPORTS.h>
8#include <aws/meteringmarketplace/MarketplaceMeteringRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/meteringmarketplace/model/UsageAllocation.h>
17namespace MarketplaceMetering
48 template<
typename ProductCodeT = Aws::String>
49 void SetProductCode(ProductCodeT&& value) { m_productCodeHasBeenSet =
true; m_productCode = std::forward<ProductCodeT>(value); }
50 template<
typename ProductCodeT = Aws::String>
62 template<
typename TimestampT = Aws::Utils::DateTime>
63 void SetTimestamp(TimestampT&& value) { m_timestampHasBeenSet =
true; m_timestamp = std::forward<TimestampT>(value); }
64 template<
typename TimestampT = Aws::Utils::DateTime>
75 template<
typename UsageDimensionT = Aws::String>
76 void SetUsageDimension(UsageDimensionT&& value) { m_usageDimensionHasBeenSet =
true; m_usageDimension = std::forward<UsageDimensionT>(value); }
77 template<
typename UsageDimensionT = Aws::String>
88 inline void SetUsageQuantity(
int value) { m_usageQuantityHasBeenSet =
true; m_usageQuantity = value; }
102 inline void SetDryRun(
bool value) { m_dryRunHasBeenSet =
true; m_dryRun = value; }
116 template<
typename UsageAllocationsT = Aws::Vector<UsageAllocation>>
117 void SetUsageAllocations(UsageAllocationsT&& value) { m_usageAllocationsHasBeenSet =
true; m_usageAllocations = std::forward<UsageAllocationsT>(value); }
118 template<
typename UsageAllocationsT = Aws::Vector<UsageAllocation>>
120 template<
typename UsageAllocationsT = UsageAllocation>
121 MeterUsageRequest&
AddUsageAllocations(UsageAllocationsT&& value) { m_usageAllocationsHasBeenSet =
true; m_usageAllocations.emplace_back(std::forward<UsageAllocationsT>(value));
return *
this; }
126 bool m_productCodeHasBeenSet =
false;
129 bool m_timestampHasBeenSet =
false;
132 bool m_usageDimensionHasBeenSet =
false;
134 int m_usageQuantity{0};
135 bool m_usageQuantityHasBeenSet =
false;
137 bool m_dryRun{
false};
138 bool m_dryRunHasBeenSet =
false;
141 bool m_usageAllocationsHasBeenSet =
false;
bool ProductCodeHasBeenSet() const
MeterUsageRequest & WithProductCode(ProductCodeT &&value)
bool DryRunHasBeenSet() const
const Aws::String & GetProductCode() const
MeterUsageRequest & WithUsageQuantity(int value)
void SetDryRun(bool value)
MeterUsageRequest & WithUsageAllocations(UsageAllocationsT &&value)
AWS_MARKETPLACEMETERING_API MeterUsageRequest()=default
AWS_MARKETPLACEMETERING_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetTimestamp(TimestampT &&value)
void SetProductCode(ProductCodeT &&value)
MeterUsageRequest & WithUsageDimension(UsageDimensionT &&value)
AWS_MARKETPLACEMETERING_API Aws::String SerializePayload() const override
bool UsageQuantityHasBeenSet() const
const Aws::String & GetUsageDimension() const
bool TimestampHasBeenSet() const
const Aws::Vector< UsageAllocation > & GetUsageAllocations() const
void SetUsageDimension(UsageDimensionT &&value)
virtual const char * GetServiceRequestName() const override
void SetUsageAllocations(UsageAllocationsT &&value)
bool UsageAllocationsHasBeenSet() const
MeterUsageRequest & WithTimestamp(TimestampT &&value)
void SetUsageQuantity(int value)
int GetUsageQuantity() const
const Aws::Utils::DateTime & GetTimestamp() const
MeterUsageRequest & AddUsageAllocations(UsageAllocationsT &&value)
bool UsageDimensionHasBeenSet() const
MeterUsageRequest & WithDryRun(bool value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector