AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateBillingGroupRequest.h
1
6#pragma once
7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/IoTRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/iot/model/BillingGroupProperties.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/iot/model/Tag.h>
13#include <utility>
14
15namespace Aws
16{
17namespace IoT
18{
19namespace Model
20{
21
25 {
26 public:
27 AWS_IOT_API CreateBillingGroupRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateBillingGroup"; }
34
35 AWS_IOT_API Aws::String SerializePayload() const override;
36
37
39
42 inline const Aws::String& GetBillingGroupName() const { return m_billingGroupName; }
43 inline bool BillingGroupNameHasBeenSet() const { return m_billingGroupNameHasBeenSet; }
44 template<typename BillingGroupNameT = Aws::String>
45 void SetBillingGroupName(BillingGroupNameT&& value) { m_billingGroupNameHasBeenSet = true; m_billingGroupName = std::forward<BillingGroupNameT>(value); }
46 template<typename BillingGroupNameT = Aws::String>
47 CreateBillingGroupRequest& WithBillingGroupName(BillingGroupNameT&& value) { SetBillingGroupName(std::forward<BillingGroupNameT>(value)); return *this;}
49
51
54 inline const BillingGroupProperties& GetBillingGroupProperties() const { return m_billingGroupProperties; }
55 inline bool BillingGroupPropertiesHasBeenSet() const { return m_billingGroupPropertiesHasBeenSet; }
56 template<typename BillingGroupPropertiesT = BillingGroupProperties>
57 void SetBillingGroupProperties(BillingGroupPropertiesT&& value) { m_billingGroupPropertiesHasBeenSet = true; m_billingGroupProperties = std::forward<BillingGroupPropertiesT>(value); }
58 template<typename BillingGroupPropertiesT = BillingGroupProperties>
59 CreateBillingGroupRequest& WithBillingGroupProperties(BillingGroupPropertiesT&& value) { SetBillingGroupProperties(std::forward<BillingGroupPropertiesT>(value)); return *this;}
61
63
66 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
67 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
68 template<typename TagsT = Aws::Vector<Tag>>
69 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
70 template<typename TagsT = Aws::Vector<Tag>>
71 CreateBillingGroupRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
72 template<typename TagsT = Tag>
73 CreateBillingGroupRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
75 private:
76
77 Aws::String m_billingGroupName;
78 bool m_billingGroupNameHasBeenSet = false;
79
80 BillingGroupProperties m_billingGroupProperties;
81 bool m_billingGroupPropertiesHasBeenSet = false;
82
83 Aws::Vector<Tag> m_tags;
84 bool m_tagsHasBeenSet = false;
85 };
86
87} // namespace Model
88} // namespace IoT
89} // namespace Aws
const BillingGroupProperties & GetBillingGroupProperties() const
virtual const char * GetServiceRequestName() const override
CreateBillingGroupRequest & WithTags(TagsT &&value)
CreateBillingGroupRequest & WithBillingGroupName(BillingGroupNameT &&value)
AWS_IOT_API CreateBillingGroupRequest()=default
CreateBillingGroupRequest & WithBillingGroupProperties(BillingGroupPropertiesT &&value)
AWS_IOT_API Aws::String SerializePayload() const override
void SetBillingGroupProperties(BillingGroupPropertiesT &&value)
void SetBillingGroupName(BillingGroupNameT &&value)
CreateBillingGroupRequest & AddTags(TagsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector