AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Topic.h
1
6#pragma once
7#include <aws/datazone/DataZone_EXPORTS.h>
8#include <aws/datazone/model/NotificationResource.h>
9#include <aws/datazone/model/NotificationRole.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace DataZone
24{
25namespace Model
26{
27
33 class Topic
34 {
35 public:
36 AWS_DATAZONE_API Topic() = default;
37 AWS_DATAZONE_API Topic(Aws::Utils::Json::JsonView jsonValue);
38 AWS_DATAZONE_API Topic& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_DATAZONE_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
44 inline const NotificationResource& GetResource() const { return m_resource; }
45 inline bool ResourceHasBeenSet() const { return m_resourceHasBeenSet; }
46 template<typename ResourceT = NotificationResource>
47 void SetResource(ResourceT&& value) { m_resourceHasBeenSet = true; m_resource = std::forward<ResourceT>(value); }
48 template<typename ResourceT = NotificationResource>
49 Topic& WithResource(ResourceT&& value) { SetResource(std::forward<ResourceT>(value)); return *this;}
51
53
56 inline NotificationRole GetRole() const { return m_role; }
57 inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; }
58 inline void SetRole(NotificationRole value) { m_roleHasBeenSet = true; m_role = value; }
59 inline Topic& WithRole(NotificationRole value) { SetRole(value); return *this;}
61
63
66 inline const Aws::String& GetSubject() const { return m_subject; }
67 inline bool SubjectHasBeenSet() const { return m_subjectHasBeenSet; }
68 template<typename SubjectT = Aws::String>
69 void SetSubject(SubjectT&& value) { m_subjectHasBeenSet = true; m_subject = std::forward<SubjectT>(value); }
70 template<typename SubjectT = Aws::String>
71 Topic& WithSubject(SubjectT&& value) { SetSubject(std::forward<SubjectT>(value)); return *this;}
73 private:
74
75 NotificationResource m_resource;
76 bool m_resourceHasBeenSet = false;
77
79 bool m_roleHasBeenSet = false;
80
81 Aws::String m_subject;
82 bool m_subjectHasBeenSet = false;
83 };
84
85} // namespace Model
86} // namespace DataZone
87} // namespace Aws
AWS_DATAZONE_API Topic()=default
AWS_DATAZONE_API Topic(Aws::Utils::Json::JsonView jsonValue)
const NotificationResource & GetResource() const
Definition Topic.h:44
void SetSubject(SubjectT &&value)
Definition Topic.h:69
Topic & WithSubject(SubjectT &&value)
Definition Topic.h:71
void SetResource(ResourceT &&value)
Definition Topic.h:47
AWS_DATAZONE_API Aws::Utils::Json::JsonValue Jsonize() const
Topic & WithResource(ResourceT &&value)
Definition Topic.h:49
AWS_DATAZONE_API Topic & operator=(Aws::Utils::Json::JsonView jsonValue)
Topic & WithRole(NotificationRole value)
Definition Topic.h:59
NotificationRole GetRole() const
Definition Topic.h:56
void SetRole(NotificationRole value)
Definition Topic.h:58
bool RoleHasBeenSet() const
Definition Topic.h:57
bool SubjectHasBeenSet() const
Definition Topic.h:67
bool ResourceHasBeenSet() const
Definition Topic.h:45
const Aws::String & GetSubject() const
Definition Topic.h:66
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue