AWS SDK for C++  0.14.3
AWS SDK for C++
Snapshot.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
21 
22 namespace Aws
23 {
24 namespace Utils
25 {
26 namespace Json
27 {
28  class JsonValue;
29 } // namespace Json
30 } // namespace Utils
31 namespace DirectoryService
32 {
33 namespace Model
34 {
35 
40  {
41  public:
42  Snapshot();
43  Snapshot(const Aws::Utils::Json::JsonValue& jsonValue);
44  Snapshot& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
45  Aws::Utils::Json::JsonValue Jsonize() const;
46 
50  inline const Aws::String& GetDirectoryId() const{ return m_directoryId; }
51 
55  inline void SetDirectoryId(const Aws::String& value) { m_directoryIdHasBeenSet = true; m_directoryId = value; }
56 
60  inline void SetDirectoryId(Aws::String&& value) { m_directoryIdHasBeenSet = true; m_directoryId = value; }
61 
65  inline void SetDirectoryId(const char* value) { m_directoryIdHasBeenSet = true; m_directoryId.assign(value); }
66 
70  inline Snapshot& WithDirectoryId(const Aws::String& value) { SetDirectoryId(value); return *this;}
71 
75  inline Snapshot& WithDirectoryId(Aws::String&& value) { SetDirectoryId(value); return *this;}
76 
80  inline Snapshot& WithDirectoryId(const char* value) { SetDirectoryId(value); return *this;}
81 
85  inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; }
86 
90  inline void SetSnapshotId(const Aws::String& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = value; }
91 
95  inline void SetSnapshotId(Aws::String&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = value; }
96 
100  inline void SetSnapshotId(const char* value) { m_snapshotIdHasBeenSet = true; m_snapshotId.assign(value); }
101 
105  inline Snapshot& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;}
106 
110  inline Snapshot& WithSnapshotId(Aws::String&& value) { SetSnapshotId(value); return *this;}
111 
115  inline Snapshot& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;}
116 
120  inline const SnapshotType& GetType() const{ return m_type; }
121 
125  inline void SetType(const SnapshotType& value) { m_typeHasBeenSet = true; m_type = value; }
126 
130  inline void SetType(SnapshotType&& value) { m_typeHasBeenSet = true; m_type = value; }
131 
135  inline Snapshot& WithType(const SnapshotType& value) { SetType(value); return *this;}
136 
140  inline Snapshot& WithType(SnapshotType&& value) { SetType(value); return *this;}
141 
145  inline const Aws::String& GetName() const{ return m_name; }
146 
150  inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
151 
155  inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = value; }
156 
160  inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
161 
165  inline Snapshot& WithName(const Aws::String& value) { SetName(value); return *this;}
166 
170  inline Snapshot& WithName(Aws::String&& value) { SetName(value); return *this;}
171 
175  inline Snapshot& WithName(const char* value) { SetName(value); return *this;}
176 
180  inline const SnapshotStatus& GetStatus() const{ return m_status; }
181 
185  inline void SetStatus(const SnapshotStatus& value) { m_statusHasBeenSet = true; m_status = value; }
186 
190  inline void SetStatus(SnapshotStatus&& value) { m_statusHasBeenSet = true; m_status = value; }
191 
195  inline Snapshot& WithStatus(const SnapshotStatus& value) { SetStatus(value); return *this;}
196 
200  inline Snapshot& WithStatus(SnapshotStatus&& value) { SetStatus(value); return *this;}
201 
205  inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; }
206 
210  inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; }
211 
215  inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = value; }
216 
220  inline Snapshot& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;}
221 
225  inline Snapshot& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(value); return *this;}
226 
227  private:
228  Aws::String m_directoryId;
229  bool m_directoryIdHasBeenSet;
230  Aws::String m_snapshotId;
231  bool m_snapshotIdHasBeenSet;
232  SnapshotType m_type;
233  bool m_typeHasBeenSet;
234  Aws::String m_name;
235  bool m_nameHasBeenSet;
236  SnapshotStatus m_status;
237  bool m_statusHasBeenSet;
238  Aws::Utils::DateTime m_startTime;
239  bool m_startTimeHasBeenSet;
240  };
241 
242 } // namespace Model
243 } // namespace DirectoryService
244 } // namespace Aws
Snapshot & WithName(const char *value)
Definition: Snapshot.h:175
void SetDirectoryId(const char *value)
Definition: Snapshot.h:65
#define AWS_DIRECTORYSERVICE_API
void SetSnapshotId(Aws::String &&value)
Definition: Snapshot.h:95
Snapshot & WithDirectoryId(Aws::String &&value)
Definition: Snapshot.h:75
Snapshot & WithStartTime(const Aws::Utils::DateTime &value)
Definition: Snapshot.h:220
Snapshot & WithDirectoryId(const char *value)
Definition: Snapshot.h:80
Snapshot & WithSnapshotId(Aws::String &&value)
Definition: Snapshot.h:110
Snapshot & WithSnapshotId(const Aws::String &value)
Definition: Snapshot.h:105
Snapshot & WithName(Aws::String &&value)
Definition: Snapshot.h:170
const Aws::String & GetSnapshotId() const
Definition: Snapshot.h:85
void SetSnapshotId(const char *value)
Definition: Snapshot.h:100
const SnapshotType & GetType() const
Definition: Snapshot.h:120
void SetSnapshotId(const Aws::String &value)
Definition: Snapshot.h:90
void SetStatus(const SnapshotStatus &value)
Definition: Snapshot.h:185
Snapshot & WithType(const SnapshotType &value)
Definition: Snapshot.h:135
void SetStartTime(const Aws::Utils::DateTime &value)
Definition: Snapshot.h:210
void SetName(Aws::String &&value)
Definition: Snapshot.h:155
void SetName(const Aws::String &value)
Definition: Snapshot.h:150
const Aws::String & GetName() const
Definition: Snapshot.h:145
void SetDirectoryId(const Aws::String &value)
Definition: Snapshot.h:55
Snapshot & WithType(SnapshotType &&value)
Definition: Snapshot.h:140
Snapshot & WithDirectoryId(const Aws::String &value)
Definition: Snapshot.h:70
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const SnapshotStatus & GetStatus() const
Definition: Snapshot.h:180
void SetType(SnapshotType &&value)
Definition: Snapshot.h:130
Snapshot & WithName(const Aws::String &value)
Definition: Snapshot.h:165
void SetName(const char *value)
Definition: Snapshot.h:160
void SetStatus(SnapshotStatus &&value)
Definition: Snapshot.h:190
Snapshot & WithStatus(SnapshotStatus &&value)
Definition: Snapshot.h:200
const Aws::Utils::DateTime & GetStartTime() const
Definition: Snapshot.h:205
Snapshot & WithStartTime(Aws::Utils::DateTime &&value)
Definition: Snapshot.h:225
Snapshot & WithSnapshotId(const char *value)
Definition: Snapshot.h:115
void SetStartTime(Aws::Utils::DateTime &&value)
Definition: Snapshot.h:215
void SetDirectoryId(Aws::String &&value)
Definition: Snapshot.h:60
const Aws::String & GetDirectoryId() const
Definition: Snapshot.h:50
Snapshot & WithStatus(const SnapshotStatus &value)
Definition: Snapshot.h:195
JSON (JavaScript Object Notation).
void SetType(const SnapshotType &value)
Definition: Snapshot.h:125