AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
TopicRuleDestination.h
1
6#pragma once
7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iot/model/TopicRuleDestinationStatus.h>
10#include <aws/core/utils/DateTime.h>
11#include <aws/iot/model/HttpUrlDestinationProperties.h>
12#include <aws/iot/model/VpcDestinationProperties.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace IoT
26{
27namespace Model
28{
29
36 {
37 public:
38 AWS_IOT_API TopicRuleDestination() = default;
42
43
45
48 inline const Aws::String& GetArn() const { return m_arn; }
49 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
50 template<typename ArnT = Aws::String>
51 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
52 template<typename ArnT = Aws::String>
53 TopicRuleDestination& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
55
57
77 inline TopicRuleDestinationStatus GetStatus() const { return m_status; }
78 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
79 inline void SetStatus(TopicRuleDestinationStatus value) { m_statusHasBeenSet = true; m_status = value; }
82
84
87 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
88 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
89 template<typename CreatedAtT = Aws::Utils::DateTime>
90 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::forward<CreatedAtT>(value); }
91 template<typename CreatedAtT = Aws::Utils::DateTime>
92 TopicRuleDestination& WithCreatedAt(CreatedAtT&& value) { SetCreatedAt(std::forward<CreatedAtT>(value)); return *this;}
94
96
99 inline const Aws::Utils::DateTime& GetLastUpdatedAt() const { return m_lastUpdatedAt; }
100 inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; }
101 template<typename LastUpdatedAtT = Aws::Utils::DateTime>
102 void SetLastUpdatedAt(LastUpdatedAtT&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::forward<LastUpdatedAtT>(value); }
103 template<typename LastUpdatedAtT = Aws::Utils::DateTime>
104 TopicRuleDestination& WithLastUpdatedAt(LastUpdatedAtT&& value) { SetLastUpdatedAt(std::forward<LastUpdatedAtT>(value)); return *this;}
106
108
112 inline const Aws::String& GetStatusReason() const { return m_statusReason; }
113 inline bool StatusReasonHasBeenSet() const { return m_statusReasonHasBeenSet; }
114 template<typename StatusReasonT = Aws::String>
115 void SetStatusReason(StatusReasonT&& value) { m_statusReasonHasBeenSet = true; m_statusReason = std::forward<StatusReasonT>(value); }
116 template<typename StatusReasonT = Aws::String>
117 TopicRuleDestination& WithStatusReason(StatusReasonT&& value) { SetStatusReason(std::forward<StatusReasonT>(value)); return *this;}
119
121
124 inline const HttpUrlDestinationProperties& GetHttpUrlProperties() const { return m_httpUrlProperties; }
125 inline bool HttpUrlPropertiesHasBeenSet() const { return m_httpUrlPropertiesHasBeenSet; }
126 template<typename HttpUrlPropertiesT = HttpUrlDestinationProperties>
127 void SetHttpUrlProperties(HttpUrlPropertiesT&& value) { m_httpUrlPropertiesHasBeenSet = true; m_httpUrlProperties = std::forward<HttpUrlPropertiesT>(value); }
128 template<typename HttpUrlPropertiesT = HttpUrlDestinationProperties>
129 TopicRuleDestination& WithHttpUrlProperties(HttpUrlPropertiesT&& value) { SetHttpUrlProperties(std::forward<HttpUrlPropertiesT>(value)); return *this;}
131
133
136 inline const VpcDestinationProperties& GetVpcProperties() const { return m_vpcProperties; }
137 inline bool VpcPropertiesHasBeenSet() const { return m_vpcPropertiesHasBeenSet; }
138 template<typename VpcPropertiesT = VpcDestinationProperties>
139 void SetVpcProperties(VpcPropertiesT&& value) { m_vpcPropertiesHasBeenSet = true; m_vpcProperties = std::forward<VpcPropertiesT>(value); }
140 template<typename VpcPropertiesT = VpcDestinationProperties>
141 TopicRuleDestination& WithVpcProperties(VpcPropertiesT&& value) { SetVpcProperties(std::forward<VpcPropertiesT>(value)); return *this;}
143 private:
144
145 Aws::String m_arn;
146 bool m_arnHasBeenSet = false;
147
149 bool m_statusHasBeenSet = false;
150
151 Aws::Utils::DateTime m_createdAt{};
152 bool m_createdAtHasBeenSet = false;
153
154 Aws::Utils::DateTime m_lastUpdatedAt{};
155 bool m_lastUpdatedAtHasBeenSet = false;
156
157 Aws::String m_statusReason;
158 bool m_statusReasonHasBeenSet = false;
159
160 HttpUrlDestinationProperties m_httpUrlProperties;
161 bool m_httpUrlPropertiesHasBeenSet = false;
162
163 VpcDestinationProperties m_vpcProperties;
164 bool m_vpcPropertiesHasBeenSet = false;
165 };
166
167} // namespace Model
168} // namespace IoT
169} // namespace Aws
TopicRuleDestinationStatus GetStatus() const
TopicRuleDestination & WithStatusReason(StatusReasonT &&value)
const HttpUrlDestinationProperties & GetHttpUrlProperties() const
void SetHttpUrlProperties(HttpUrlPropertiesT &&value)
void SetStatus(TopicRuleDestinationStatus value)
AWS_IOT_API TopicRuleDestination & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetLastUpdatedAt() const
const Aws::Utils::DateTime & GetCreatedAt() const
TopicRuleDestination & WithStatus(TopicRuleDestinationStatus value)
AWS_IOT_API TopicRuleDestination(Aws::Utils::Json::JsonView jsonValue)
TopicRuleDestination & WithCreatedAt(CreatedAtT &&value)
void SetLastUpdatedAt(LastUpdatedAtT &&value)
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetVpcProperties(VpcPropertiesT &&value)
const VpcDestinationProperties & GetVpcProperties() const
TopicRuleDestination & WithArn(ArnT &&value)
AWS_IOT_API TopicRuleDestination()=default
void SetStatusReason(StatusReasonT &&value)
TopicRuleDestination & WithLastUpdatedAt(LastUpdatedAtT &&value)
TopicRuleDestination & WithHttpUrlProperties(HttpUrlPropertiesT &&value)
const Aws::String & GetStatusReason() const
TopicRuleDestination & WithVpcProperties(VpcPropertiesT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue