AWS SDK for C++

AWS SDK for C++ Version 1.11.764

Loading...
Searching...
No Matches
NonCompliantResource.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/iot/IoT_EXPORTS.h>
10#include <aws/iot/model/ResourceIdentifier.h>
11#include <aws/iot/model/ResourceType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace IoT {
23namespace Model {
24
32 public:
33 AWS_IOT_API NonCompliantResource() = default;
37
39
42 inline ResourceType GetResourceType() const { return m_resourceType; }
43 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
44 inline void SetResourceType(ResourceType value) {
45 m_resourceTypeHasBeenSet = true;
46 m_resourceType = value;
47 }
49 SetResourceType(value);
50 return *this;
51 }
53
55
58 inline const ResourceIdentifier& GetResourceIdentifier() const { return m_resourceIdentifier; }
59 inline bool ResourceIdentifierHasBeenSet() const { return m_resourceIdentifierHasBeenSet; }
60 template <typename ResourceIdentifierT = ResourceIdentifier>
61 void SetResourceIdentifier(ResourceIdentifierT&& value) {
62 m_resourceIdentifierHasBeenSet = true;
63 m_resourceIdentifier = std::forward<ResourceIdentifierT>(value);
64 }
65 template <typename ResourceIdentifierT = ResourceIdentifier>
66 NonCompliantResource& WithResourceIdentifier(ResourceIdentifierT&& value) {
67 SetResourceIdentifier(std::forward<ResourceIdentifierT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::Map<Aws::String, Aws::String>& GetAdditionalInfo() const { return m_additionalInfo; }
77 inline bool AdditionalInfoHasBeenSet() const { return m_additionalInfoHasBeenSet; }
78 template <typename AdditionalInfoT = Aws::Map<Aws::String, Aws::String>>
79 void SetAdditionalInfo(AdditionalInfoT&& value) {
80 m_additionalInfoHasBeenSet = true;
81 m_additionalInfo = std::forward<AdditionalInfoT>(value);
82 }
83 template <typename AdditionalInfoT = Aws::Map<Aws::String, Aws::String>>
84 NonCompliantResource& WithAdditionalInfo(AdditionalInfoT&& value) {
85 SetAdditionalInfo(std::forward<AdditionalInfoT>(value));
86 return *this;
87 }
88 template <typename AdditionalInfoKeyT = Aws::String, typename AdditionalInfoValueT = Aws::String>
89 NonCompliantResource& AddAdditionalInfo(AdditionalInfoKeyT&& key, AdditionalInfoValueT&& value) {
90 m_additionalInfoHasBeenSet = true;
91 m_additionalInfo.emplace(std::forward<AdditionalInfoKeyT>(key), std::forward<AdditionalInfoValueT>(value));
92 return *this;
93 }
95 private:
96 ResourceType m_resourceType{ResourceType::NOT_SET};
97
98 ResourceIdentifier m_resourceIdentifier;
99
100 Aws::Map<Aws::String, Aws::String> m_additionalInfo;
101 bool m_resourceTypeHasBeenSet = false;
102 bool m_resourceIdentifierHasBeenSet = false;
103 bool m_additionalInfoHasBeenSet = false;
104};
105
106} // namespace Model
107} // namespace IoT
108} // namespace Aws
const Aws::Map< Aws::String, Aws::String > & GetAdditionalInfo() const
NonCompliantResource & WithResourceIdentifier(ResourceIdentifierT &&value)
void SetAdditionalInfo(AdditionalInfoT &&value)
const ResourceIdentifier & GetResourceIdentifier() const
NonCompliantResource & AddAdditionalInfo(AdditionalInfoKeyT &&key, AdditionalInfoValueT &&value)
AWS_IOT_API NonCompliantResource & operator=(Aws::Utils::Json::JsonView jsonValue)
NonCompliantResource & WithResourceType(ResourceType value)
AWS_IOT_API NonCompliantResource(Aws::Utils::Json::JsonView jsonValue)
NonCompliantResource & WithAdditionalInfo(AdditionalInfoT &&value)
void SetResourceIdentifier(ResourceIdentifierT &&value)
AWS_IOT_API NonCompliantResource()=default
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Aws::Utils::Json::JsonValue JsonValue