AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CreateWorkspaceBundleRequest.h
1
6#pragma once
7#include <aws/workspaces/WorkSpaces_EXPORTS.h>
8#include <aws/workspaces/WorkSpacesRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/workspaces/model/ComputeType.h>
11#include <aws/workspaces/model/UserStorage.h>
12#include <aws/workspaces/model/RootStorage.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/workspaces/model/Tag.h>
15#include <utility>
16
17namespace Aws
18{
19namespace WorkSpaces
20{
21namespace Model
22{
23
27 {
28 public:
29 AWS_WORKSPACES_API CreateWorkspaceBundleRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateWorkspaceBundle"; }
36
37 AWS_WORKSPACES_API Aws::String SerializePayload() const override;
38
40
41
43
46 inline const Aws::String& GetBundleName() const { return m_bundleName; }
47 inline bool BundleNameHasBeenSet() const { return m_bundleNameHasBeenSet; }
48 template<typename BundleNameT = Aws::String>
49 void SetBundleName(BundleNameT&& value) { m_bundleNameHasBeenSet = true; m_bundleName = std::forward<BundleNameT>(value); }
50 template<typename BundleNameT = Aws::String>
51 CreateWorkspaceBundleRequest& WithBundleName(BundleNameT&& value) { SetBundleName(std::forward<BundleNameT>(value)); return *this;}
53
55
58 inline const Aws::String& GetBundleDescription() const { return m_bundleDescription; }
59 inline bool BundleDescriptionHasBeenSet() const { return m_bundleDescriptionHasBeenSet; }
60 template<typename BundleDescriptionT = Aws::String>
61 void SetBundleDescription(BundleDescriptionT&& value) { m_bundleDescriptionHasBeenSet = true; m_bundleDescription = std::forward<BundleDescriptionT>(value); }
62 template<typename BundleDescriptionT = Aws::String>
63 CreateWorkspaceBundleRequest& WithBundleDescription(BundleDescriptionT&& value) { SetBundleDescription(std::forward<BundleDescriptionT>(value)); return *this;}
65
67
70 inline const Aws::String& GetImageId() const { return m_imageId; }
71 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
72 template<typename ImageIdT = Aws::String>
73 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet = true; m_imageId = std::forward<ImageIdT>(value); }
74 template<typename ImageIdT = Aws::String>
75 CreateWorkspaceBundleRequest& WithImageId(ImageIdT&& value) { SetImageId(std::forward<ImageIdT>(value)); return *this;}
77
79
80 inline const ComputeType& GetComputeType() const { return m_computeType; }
81 inline bool ComputeTypeHasBeenSet() const { return m_computeTypeHasBeenSet; }
82 template<typename ComputeTypeT = ComputeType>
83 void SetComputeType(ComputeTypeT&& value) { m_computeTypeHasBeenSet = true; m_computeType = std::forward<ComputeTypeT>(value); }
84 template<typename ComputeTypeT = ComputeType>
85 CreateWorkspaceBundleRequest& WithComputeType(ComputeTypeT&& value) { SetComputeType(std::forward<ComputeTypeT>(value)); return *this;}
87
89
90 inline const UserStorage& GetUserStorage() const { return m_userStorage; }
91 inline bool UserStorageHasBeenSet() const { return m_userStorageHasBeenSet; }
92 template<typename UserStorageT = UserStorage>
93 void SetUserStorage(UserStorageT&& value) { m_userStorageHasBeenSet = true; m_userStorage = std::forward<UserStorageT>(value); }
94 template<typename UserStorageT = UserStorage>
95 CreateWorkspaceBundleRequest& WithUserStorage(UserStorageT&& value) { SetUserStorage(std::forward<UserStorageT>(value)); return *this;}
97
99
100 inline const RootStorage& GetRootStorage() const { return m_rootStorage; }
101 inline bool RootStorageHasBeenSet() const { return m_rootStorageHasBeenSet; }
102 template<typename RootStorageT = RootStorage>
103 void SetRootStorage(RootStorageT&& value) { m_rootStorageHasBeenSet = true; m_rootStorage = std::forward<RootStorageT>(value); }
104 template<typename RootStorageT = RootStorage>
105 CreateWorkspaceBundleRequest& WithRootStorage(RootStorageT&& value) { SetRootStorage(std::forward<RootStorageT>(value)); return *this;}
107
109
115 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
116 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
117 template<typename TagsT = Aws::Vector<Tag>>
118 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
119 template<typename TagsT = Aws::Vector<Tag>>
120 CreateWorkspaceBundleRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
121 template<typename TagsT = Tag>
122 CreateWorkspaceBundleRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
124 private:
125
126 Aws::String m_bundleName;
127 bool m_bundleNameHasBeenSet = false;
128
129 Aws::String m_bundleDescription;
130 bool m_bundleDescriptionHasBeenSet = false;
131
132 Aws::String m_imageId;
133 bool m_imageIdHasBeenSet = false;
134
135 ComputeType m_computeType;
136 bool m_computeTypeHasBeenSet = false;
137
138 UserStorage m_userStorage;
139 bool m_userStorageHasBeenSet = false;
140
141 RootStorage m_rootStorage;
142 bool m_rootStorageHasBeenSet = false;
143
144 Aws::Vector<Tag> m_tags;
145 bool m_tagsHasBeenSet = false;
146 };
147
148} // namespace Model
149} // namespace WorkSpaces
150} // namespace Aws
CreateWorkspaceBundleRequest & WithRootStorage(RootStorageT &&value)
CreateWorkspaceBundleRequest & WithUserStorage(UserStorageT &&value)
CreateWorkspaceBundleRequest & WithComputeType(ComputeTypeT &&value)
AWS_WORKSPACES_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateWorkspaceBundleRequest & WithImageId(ImageIdT &&value)
AWS_WORKSPACES_API CreateWorkspaceBundleRequest()=default
CreateWorkspaceBundleRequest & WithBundleDescription(BundleDescriptionT &&value)
CreateWorkspaceBundleRequest & WithBundleName(BundleNameT &&value)
AWS_WORKSPACES_API Aws::String SerializePayload() const override
CreateWorkspaceBundleRequest & AddTags(TagsT &&value)
CreateWorkspaceBundleRequest & WithTags(TagsT &&value)
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