AWS SDK for C++  0.12.9
AWS SDK for C++
WorkspaceRequest.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
20 
21 namespace Aws
22 {
23 namespace Utils
24 {
25 namespace Json
26 {
27  class JsonValue;
28 } // namespace Json
29 } // namespace Utils
30 namespace WorkSpaces
31 {
32 namespace Model
33 {
34 
39  {
40  public:
43  WorkspaceRequest& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
44  Aws::Utils::Json::JsonValue Jsonize() const;
45 
51  inline const Aws::String& GetDirectoryId() const{ return m_directoryId; }
52 
58  inline void SetDirectoryId(const Aws::String& value) { m_directoryIdHasBeenSet = true; m_directoryId = value; }
59 
65  inline void SetDirectoryId(Aws::String&& value) { m_directoryIdHasBeenSet = true; m_directoryId = value; }
66 
72  inline void SetDirectoryId(const char* value) { m_directoryIdHasBeenSet = true; m_directoryId.assign(value); }
73 
79  inline WorkspaceRequest& WithDirectoryId(const Aws::String& value) { SetDirectoryId(value); return *this;}
80 
86  inline WorkspaceRequest& WithDirectoryId(Aws::String&& value) { SetDirectoryId(value); return *this;}
87 
93  inline WorkspaceRequest& WithDirectoryId(const char* value) { SetDirectoryId(value); return *this;}
94 
100  inline const Aws::String& GetUserName() const{ return m_userName; }
101 
107  inline void SetUserName(const Aws::String& value) { m_userNameHasBeenSet = true; m_userName = value; }
108 
114  inline void SetUserName(Aws::String&& value) { m_userNameHasBeenSet = true; m_userName = value; }
115 
121  inline void SetUserName(const char* value) { m_userNameHasBeenSet = true; m_userName.assign(value); }
122 
128  inline WorkspaceRequest& WithUserName(const Aws::String& value) { SetUserName(value); return *this;}
129 
135  inline WorkspaceRequest& WithUserName(Aws::String&& value) { SetUserName(value); return *this;}
136 
142  inline WorkspaceRequest& WithUserName(const char* value) { SetUserName(value); return *this;}
143 
149  inline const Aws::String& GetBundleId() const{ return m_bundleId; }
150 
156  inline void SetBundleId(const Aws::String& value) { m_bundleIdHasBeenSet = true; m_bundleId = value; }
157 
163  inline void SetBundleId(Aws::String&& value) { m_bundleIdHasBeenSet = true; m_bundleId = value; }
164 
170  inline void SetBundleId(const char* value) { m_bundleIdHasBeenSet = true; m_bundleId.assign(value); }
171 
177  inline WorkspaceRequest& WithBundleId(const Aws::String& value) { SetBundleId(value); return *this;}
178 
184  inline WorkspaceRequest& WithBundleId(Aws::String&& value) { SetBundleId(value); return *this;}
185 
191  inline WorkspaceRequest& WithBundleId(const char* value) { SetBundleId(value); return *this;}
192 
196  inline const Aws::String& GetVolumeEncryptionKey() const{ return m_volumeEncryptionKey; }
197 
201  inline void SetVolumeEncryptionKey(const Aws::String& value) { m_volumeEncryptionKeyHasBeenSet = true; m_volumeEncryptionKey = value; }
202 
206  inline void SetVolumeEncryptionKey(Aws::String&& value) { m_volumeEncryptionKeyHasBeenSet = true; m_volumeEncryptionKey = value; }
207 
211  inline void SetVolumeEncryptionKey(const char* value) { m_volumeEncryptionKeyHasBeenSet = true; m_volumeEncryptionKey.assign(value); }
212 
216  inline WorkspaceRequest& WithVolumeEncryptionKey(const Aws::String& value) { SetVolumeEncryptionKey(value); return *this;}
217 
221  inline WorkspaceRequest& WithVolumeEncryptionKey(Aws::String&& value) { SetVolumeEncryptionKey(value); return *this;}
222 
226  inline WorkspaceRequest& WithVolumeEncryptionKey(const char* value) { SetVolumeEncryptionKey(value); return *this;}
227 
232  inline bool GetUserVolumeEncryptionEnabled() const{ return m_userVolumeEncryptionEnabled; }
233 
238  inline void SetUserVolumeEncryptionEnabled(bool value) { m_userVolumeEncryptionEnabledHasBeenSet = true; m_userVolumeEncryptionEnabled = value; }
239 
244  inline WorkspaceRequest& WithUserVolumeEncryptionEnabled(bool value) { SetUserVolumeEncryptionEnabled(value); return *this;}
245 
250  inline bool GetRootVolumeEncryptionEnabled() const{ return m_rootVolumeEncryptionEnabled; }
251 
256  inline void SetRootVolumeEncryptionEnabled(bool value) { m_rootVolumeEncryptionEnabledHasBeenSet = true; m_rootVolumeEncryptionEnabled = value; }
257 
262  inline WorkspaceRequest& WithRootVolumeEncryptionEnabled(bool value) { SetRootVolumeEncryptionEnabled(value); return *this;}
263 
267  inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
268 
272  inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
273 
277  inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = value; }
278 
282  inline WorkspaceRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
283 
287  inline WorkspaceRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(value); return *this;}
288 
292  inline WorkspaceRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
293 
297  inline WorkspaceRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
298 
299  private:
300  Aws::String m_directoryId;
301  bool m_directoryIdHasBeenSet;
302  Aws::String m_userName;
303  bool m_userNameHasBeenSet;
304  Aws::String m_bundleId;
305  bool m_bundleIdHasBeenSet;
306  Aws::String m_volumeEncryptionKey;
307  bool m_volumeEncryptionKeyHasBeenSet;
308  bool m_userVolumeEncryptionEnabled;
309  bool m_userVolumeEncryptionEnabledHasBeenSet;
310  bool m_rootVolumeEncryptionEnabled;
311  bool m_rootVolumeEncryptionEnabledHasBeenSet;
312  Aws::Vector<Tag> m_tags;
313  bool m_tagsHasBeenSet;
314  };
315 
316 } // namespace Model
317 } // namespace WorkSpaces
318 } // namespace Aws
WorkspaceRequest & WithVolumeEncryptionKey(const Aws::String &value)
WorkspaceRequest & WithVolumeEncryptionKey(Aws::String &&value)
const Aws::String & GetUserName() const
WorkspaceRequest & WithUserName(Aws::String &&value)
WorkspaceRequest & WithUserName(const char *value)
const Aws::Vector< Tag > & GetTags() const
void SetTags(const Aws::Vector< Tag > &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
WorkspaceRequest & WithTags(Aws::Vector< Tag > &&value)
WorkspaceRequest & WithDirectoryId(const char *value)
WorkspaceRequest & WithDirectoryId(const Aws::String &value)
WorkspaceRequest & WithRootVolumeEncryptionEnabled(bool value)
void SetTags(Aws::Vector< Tag > &&value)
void SetVolumeEncryptionKey(const char *value)
void SetDirectoryId(Aws::String &&value)
const Aws::String & GetBundleId() const
void SetVolumeEncryptionKey(const Aws::String &value)
WorkspaceRequest & WithBundleId(const char *value)
WorkspaceRequest & WithTags(const Aws::Vector< Tag > &value)
WorkspaceRequest & AddTags(const Tag &value)
void SetBundleId(const Aws::String &value)
void SetUserName(const Aws::String &value)
WorkspaceRequest & WithDirectoryId(Aws::String &&value)
WorkspaceRequest & WithVolumeEncryptionKey(const char *value)
WorkspaceRequest & WithUserVolumeEncryptionEnabled(bool value)
const Aws::String & GetDirectoryId() const
void SetVolumeEncryptionKey(Aws::String &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
WorkspaceRequest & WithBundleId(const Aws::String &value)
const Aws::String & GetVolumeEncryptionKey() const
void SetDirectoryId(const Aws::String &value)
WorkspaceRequest & WithBundleId(Aws::String &&value)
WorkspaceRequest & WithUserName(const Aws::String &value)
JSON (JavaScript Object Notation).
WorkspaceRequest & AddTags(Tag &&value)
#define AWS_WORKSPACES_API