AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateLocationS3Request.h
1
6#pragma once
7#include <aws/datasync/DataSync_EXPORTS.h>
8#include <aws/datasync/DataSyncRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/datasync/model/S3StorageClass.h>
11#include <aws/datasync/model/S3Config.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/datasync/model/TagListEntry.h>
14#include <utility>
15
16namespace Aws
17{
18namespace DataSync
19{
20namespace Model
21{
22
29 {
30 public:
31 AWS_DATASYNC_API CreateLocationS3Request() = default;
32
33 // Service request name is the Operation name which will send this request out,
34 // each operation should has unique request name, so that we can get operation's name from this request.
35 // Note: this is not true for response, multiple operations may have the same response name,
36 // so we can not get operation's name from response.
37 inline virtual const char* GetServiceRequestName() const override { return "CreateLocationS3"; }
38
39 AWS_DATASYNC_API Aws::String SerializePayload() const override;
40
42
43
45
55 inline const Aws::String& GetSubdirectory() const { return m_subdirectory; }
56 inline bool SubdirectoryHasBeenSet() const { return m_subdirectoryHasBeenSet; }
57 template<typename SubdirectoryT = Aws::String>
58 void SetSubdirectory(SubdirectoryT&& value) { m_subdirectoryHasBeenSet = true; m_subdirectory = std::forward<SubdirectoryT>(value); }
59 template<typename SubdirectoryT = Aws::String>
60 CreateLocationS3Request& WithSubdirectory(SubdirectoryT&& value) { SetSubdirectory(std::forward<SubdirectoryT>(value)); return *this;}
62
64
74 inline const Aws::String& GetS3BucketArn() const { return m_s3BucketArn; }
75 inline bool S3BucketArnHasBeenSet() const { return m_s3BucketArnHasBeenSet; }
76 template<typename S3BucketArnT = Aws::String>
77 void SetS3BucketArn(S3BucketArnT&& value) { m_s3BucketArnHasBeenSet = true; m_s3BucketArn = std::forward<S3BucketArnT>(value); }
78 template<typename S3BucketArnT = Aws::String>
79 CreateLocationS3Request& WithS3BucketArn(S3BucketArnT&& value) { SetS3BucketArn(std::forward<S3BucketArnT>(value)); return *this;}
81
83
92 inline S3StorageClass GetS3StorageClass() const { return m_s3StorageClass; }
93 inline bool S3StorageClassHasBeenSet() const { return m_s3StorageClassHasBeenSet; }
94 inline void SetS3StorageClass(S3StorageClass value) { m_s3StorageClassHasBeenSet = true; m_s3StorageClass = value; }
97
99
100 inline const S3Config& GetS3Config() const { return m_s3Config; }
101 inline bool S3ConfigHasBeenSet() const { return m_s3ConfigHasBeenSet; }
102 template<typename S3ConfigT = S3Config>
103 void SetS3Config(S3ConfigT&& value) { m_s3ConfigHasBeenSet = true; m_s3Config = std::forward<S3ConfigT>(value); }
104 template<typename S3ConfigT = S3Config>
105 CreateLocationS3Request& WithS3Config(S3ConfigT&& value) { SetS3Config(std::forward<S3ConfigT>(value)); return *this;}
107
109
115 inline const Aws::Vector<Aws::String>& GetAgentArns() const { return m_agentArns; }
116 inline bool AgentArnsHasBeenSet() const { return m_agentArnsHasBeenSet; }
117 template<typename AgentArnsT = Aws::Vector<Aws::String>>
118 void SetAgentArns(AgentArnsT&& value) { m_agentArnsHasBeenSet = true; m_agentArns = std::forward<AgentArnsT>(value); }
119 template<typename AgentArnsT = Aws::Vector<Aws::String>>
120 CreateLocationS3Request& WithAgentArns(AgentArnsT&& value) { SetAgentArns(std::forward<AgentArnsT>(value)); return *this;}
121 template<typename AgentArnsT = Aws::String>
122 CreateLocationS3Request& AddAgentArns(AgentArnsT&& value) { m_agentArnsHasBeenSet = true; m_agentArns.emplace_back(std::forward<AgentArnsT>(value)); return *this; }
124
126
131 inline const Aws::Vector<TagListEntry>& GetTags() const { return m_tags; }
132 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
133 template<typename TagsT = Aws::Vector<TagListEntry>>
134 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
135 template<typename TagsT = Aws::Vector<TagListEntry>>
136 CreateLocationS3Request& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
137 template<typename TagsT = TagListEntry>
138 CreateLocationS3Request& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
140 private:
141
142 Aws::String m_subdirectory;
143 bool m_subdirectoryHasBeenSet = false;
144
145 Aws::String m_s3BucketArn;
146 bool m_s3BucketArnHasBeenSet = false;
147
148 S3StorageClass m_s3StorageClass{S3StorageClass::NOT_SET};
149 bool m_s3StorageClassHasBeenSet = false;
150
151 S3Config m_s3Config;
152 bool m_s3ConfigHasBeenSet = false;
153
154 Aws::Vector<Aws::String> m_agentArns;
155 bool m_agentArnsHasBeenSet = false;
156
158 bool m_tagsHasBeenSet = false;
159 };
160
161} // namespace Model
162} // namespace DataSync
163} // namespace Aws
CreateLocationS3Request & WithSubdirectory(SubdirectoryT &&value)
CreateLocationS3Request & WithS3BucketArn(S3BucketArnT &&value)
CreateLocationS3Request & WithS3StorageClass(S3StorageClass value)
const Aws::Vector< TagListEntry > & GetTags() const
CreateLocationS3Request & AddTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
CreateLocationS3Request & WithS3Config(S3ConfigT &&value)
AWS_DATASYNC_API CreateLocationS3Request()=default
const Aws::Vector< Aws::String > & GetAgentArns() const
CreateLocationS3Request & WithTags(TagsT &&value)
CreateLocationS3Request & AddAgentArns(AgentArnsT &&value)
AWS_DATASYNC_API Aws::String SerializePayload() const override
CreateLocationS3Request & WithAgentArns(AgentArnsT &&value)
AWS_DATASYNC_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector