AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateSnapshotCopyGrantRequest.h
1
6#pragma once
7#include <aws/redshift/Redshift_EXPORTS.h>
8#include <aws/redshift/RedshiftRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/redshift/model/Tag.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Redshift
17{
18namespace Model
19{
20
28 {
29 public:
30 AWS_REDSHIFT_API CreateSnapshotCopyGrantRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateSnapshotCopyGrant"; }
37
38 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
39
40 protected:
41 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42
43 public:
44
46
55 inline const Aws::String& GetSnapshotCopyGrantName() const { return m_snapshotCopyGrantName; }
56 inline bool SnapshotCopyGrantNameHasBeenSet() const { return m_snapshotCopyGrantNameHasBeenSet; }
57 template<typename SnapshotCopyGrantNameT = Aws::String>
58 void SetSnapshotCopyGrantName(SnapshotCopyGrantNameT&& value) { m_snapshotCopyGrantNameHasBeenSet = true; m_snapshotCopyGrantName = std::forward<SnapshotCopyGrantNameT>(value); }
59 template<typename SnapshotCopyGrantNameT = Aws::String>
60 CreateSnapshotCopyGrantRequest& WithSnapshotCopyGrantName(SnapshotCopyGrantNameT&& value) { SetSnapshotCopyGrantName(std::forward<SnapshotCopyGrantNameT>(value)); return *this;}
62
64
68 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
69 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
70 template<typename KmsKeyIdT = Aws::String>
71 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
72 template<typename KmsKeyIdT = Aws::String>
73 CreateSnapshotCopyGrantRequest& WithKmsKeyId(KmsKeyIdT&& value) { SetKmsKeyId(std::forward<KmsKeyIdT>(value)); return *this;}
75
77
80 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
81 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
82 template<typename TagsT = Aws::Vector<Tag>>
83 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
84 template<typename TagsT = Aws::Vector<Tag>>
85 CreateSnapshotCopyGrantRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
86 template<typename TagsT = Tag>
87 CreateSnapshotCopyGrantRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
89 private:
90
91 Aws::String m_snapshotCopyGrantName;
92 bool m_snapshotCopyGrantNameHasBeenSet = false;
93
94 Aws::String m_kmsKeyId;
95 bool m_kmsKeyIdHasBeenSet = false;
96
97 Aws::Vector<Tag> m_tags;
98 bool m_tagsHasBeenSet = false;
99 };
100
101} // namespace Model
102} // namespace Redshift
103} // namespace Aws
CreateSnapshotCopyGrantRequest & WithSnapshotCopyGrantName(SnapshotCopyGrantNameT &&value)
CreateSnapshotCopyGrantRequest & AddTags(TagsT &&value)
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
AWS_REDSHIFT_API CreateSnapshotCopyGrantRequest()=default
CreateSnapshotCopyGrantRequest & WithTags(TagsT &&value)
CreateSnapshotCopyGrantRequest & WithKmsKeyId(KmsKeyIdT &&value)
AWS_REDSHIFT_API Aws::String SerializePayload() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector