7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iot/IoT_EXPORTS.h>
10#include <aws/iot/model/HttpUrlDestinationProperties.h>
11#include <aws/iot/model/InfluxDBDestinationProperties.h>
12#include <aws/iot/model/TopicRuleDestinationStatus.h>
13#include <aws/iot/model/VpcDestinationProperties.h>
45 template <
typename ArnT = Aws::String>
47 m_arnHasBeenSet =
true;
48 m_arn = std::forward<ArnT>(value);
50 template <
typename ArnT = Aws::String>
52 SetArn(std::forward<ArnT>(value));
81 m_statusHasBeenSet =
true;
96 template <
typename CreatedAtT = Aws::Utils::DateTime>
98 m_createdAtHasBeenSet =
true;
99 m_createdAt = std::forward<CreatedAtT>(value);
101 template <
typename CreatedAtT = Aws::Utils::DateTime>
114 template <
typename LastUpdatedAtT = Aws::Utils::DateTime>
116 m_lastUpdatedAtHasBeenSet =
true;
117 m_lastUpdatedAt = std::forward<LastUpdatedAtT>(value);
119 template <
typename LastUpdatedAtT = Aws::Utils::DateTime>
133 template <
typename StatusReasonT = Aws::String>
135 m_statusReasonHasBeenSet =
true;
136 m_statusReason = std::forward<StatusReasonT>(value);
138 template <
typename StatusReasonT = Aws::String>
151 template <
typename HttpUrlPropertiesT = HttpUrlDestinationProperties>
153 m_httpUrlPropertiesHasBeenSet =
true;
154 m_httpUrlProperties = std::forward<HttpUrlPropertiesT>(value);
156 template <
typename HttpUrlPropertiesT = HttpUrlDestinationProperties>
169 template <
typename VpcPropertiesT = VpcDestinationProperties>
171 m_vpcPropertiesHasBeenSet =
true;
172 m_vpcProperties = std::forward<VpcPropertiesT>(value);
174 template <
typename VpcPropertiesT = VpcDestinationProperties>
189 template <
typename InfluxDBPropertiesT = InfluxDBDestinationProperties>
191 m_influxDBPropertiesHasBeenSet =
true;
192 m_influxDBProperties = std::forward<InfluxDBPropertiesT>(value);
194 template <
typename InfluxDBPropertiesT = InfluxDBDestinationProperties>
211 HttpUrlDestinationProperties m_httpUrlProperties;
213 VpcDestinationProperties m_vpcProperties;
215 InfluxDBDestinationProperties m_influxDBProperties;
216 bool m_arnHasBeenSet =
false;
217 bool m_statusHasBeenSet =
false;
218 bool m_createdAtHasBeenSet =
false;
219 bool m_lastUpdatedAtHasBeenSet =
false;
220 bool m_statusReasonHasBeenSet =
false;
221 bool m_httpUrlPropertiesHasBeenSet =
false;
222 bool m_vpcPropertiesHasBeenSet =
false;
223 bool m_influxDBPropertiesHasBeenSet =
false;
TopicRuleDestination & WithInfluxDBProperties(InfluxDBPropertiesT &&value)
bool StatusHasBeenSet() const
TopicRuleDestinationStatus GetStatus() const
const InfluxDBDestinationProperties & GetInfluxDBProperties() const
void SetArn(ArnT &&value)
TopicRuleDestination & WithStatusReason(StatusReasonT &&value)
bool LastUpdatedAtHasBeenSet() const
const HttpUrlDestinationProperties & GetHttpUrlProperties() const
void SetHttpUrlProperties(HttpUrlPropertiesT &&value)
void SetStatus(TopicRuleDestinationStatus value)
AWS_IOT_API TopicRuleDestination & operator=(Aws::Utils::Json::JsonView jsonValue)
bool InfluxDBPropertiesHasBeenSet() const
const Aws::Utils::DateTime & GetLastUpdatedAt() const
const Aws::Utils::DateTime & GetCreatedAt() const
bool CreatedAtHasBeenSet() const
bool StatusReasonHasBeenSet() const
TopicRuleDestination & WithStatus(TopicRuleDestinationStatus value)
bool HttpUrlPropertiesHasBeenSet() const
AWS_IOT_API TopicRuleDestination(Aws::Utils::Json::JsonView jsonValue)
TopicRuleDestination & WithCreatedAt(CreatedAtT &&value)
void SetLastUpdatedAt(LastUpdatedAtT &&value)
bool ArnHasBeenSet() const
const Aws::String & GetArn() const
void SetInfluxDBProperties(InfluxDBPropertiesT &&value)
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetVpcProperties(VpcPropertiesT &&value)
void SetCreatedAt(CreatedAtT &&value)
const VpcDestinationProperties & GetVpcProperties() const
TopicRuleDestination & WithArn(ArnT &&value)
AWS_IOT_API TopicRuleDestination()=default
void SetStatusReason(StatusReasonT &&value)
bool VpcPropertiesHasBeenSet() const
TopicRuleDestination & WithLastUpdatedAt(LastUpdatedAtT &&value)
TopicRuleDestination & WithHttpUrlProperties(HttpUrlPropertiesT &&value)
const Aws::String & GetStatusReason() const
TopicRuleDestination & WithVpcProperties(VpcPropertiesT &&value)
TopicRuleDestinationStatus
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue