AWS SDK for C++  0.12.9
AWS SDK for C++
Source.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
17 #include <aws/config/model/Owner.h>
21 
22 namespace Aws
23 {
24 namespace Utils
25 {
26 namespace Json
27 {
28  class JsonValue;
29 } // namespace Json
30 } // namespace Utils
31 namespace ConfigService
32 {
33 namespace Model
34 {
35 
41  {
42  public:
43  Source();
44  Source(const Aws::Utils::Json::JsonValue& jsonValue);
45  Source& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
46  Aws::Utils::Json::JsonValue Jsonize() const;
47 
52  inline const Owner& GetOwner() const{ return m_owner; }
53 
58  inline void SetOwner(const Owner& value) { m_ownerHasBeenSet = true; m_owner = value; }
59 
64  inline void SetOwner(Owner&& value) { m_ownerHasBeenSet = true; m_owner = value; }
65 
70  inline Source& WithOwner(const Owner& value) { SetOwner(value); return *this;}
71 
76  inline Source& WithOwner(Owner&& value) { SetOwner(value); return *this;}
77 
86  inline const Aws::String& GetSourceIdentifier() const{ return m_sourceIdentifier; }
87 
96  inline void SetSourceIdentifier(const Aws::String& value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier = value; }
97 
106  inline void SetSourceIdentifier(Aws::String&& value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier = value; }
107 
116  inline void SetSourceIdentifier(const char* value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier.assign(value); }
117 
126  inline Source& WithSourceIdentifier(const Aws::String& value) { SetSourceIdentifier(value); return *this;}
127 
136  inline Source& WithSourceIdentifier(Aws::String&& value) { SetSourceIdentifier(value); return *this;}
137 
146  inline Source& WithSourceIdentifier(const char* value) { SetSourceIdentifier(value); return *this;}
147 
152  inline const Aws::Vector<SourceDetail>& GetSourceDetails() const{ return m_sourceDetails; }
153 
158  inline void SetSourceDetails(const Aws::Vector<SourceDetail>& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails = value; }
159 
164  inline void SetSourceDetails(Aws::Vector<SourceDetail>&& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails = value; }
165 
170  inline Source& WithSourceDetails(const Aws::Vector<SourceDetail>& value) { SetSourceDetails(value); return *this;}
171 
176  inline Source& WithSourceDetails(Aws::Vector<SourceDetail>&& value) { SetSourceDetails(value); return *this;}
177 
182  inline Source& AddSourceDetails(const SourceDetail& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails.push_back(value); return *this; }
183 
188  inline Source& AddSourceDetails(SourceDetail&& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails.push_back(value); return *this; }
189 
190  private:
191  Owner m_owner;
192  bool m_ownerHasBeenSet;
193  Aws::String m_sourceIdentifier;
194  bool m_sourceIdentifierHasBeenSet;
195  Aws::Vector<SourceDetail> m_sourceDetails;
196  bool m_sourceDetailsHasBeenSet;
197  };
198 
199 } // namespace Model
200 } // namespace ConfigService
201 } // namespace Aws
Source & WithSourceIdentifier(const char *value)
Definition: Source.h:146
Source & AddSourceDetails(SourceDetail &&value)
Definition: Source.h:188
void SetSourceIdentifier(Aws::String &&value)
Definition: Source.h:106
Source & WithSourceDetails(const Aws::Vector< SourceDetail > &value)
Definition: Source.h:170
void SetSourceDetails(const Aws::Vector< SourceDetail > &value)
Definition: Source.h:158
void SetSourceDetails(Aws::Vector< SourceDetail > &&value)
Definition: Source.h:164
const Aws::Vector< SourceDetail > & GetSourceDetails() const
Definition: Source.h:152
Source & WithOwner(const Owner &value)
Definition: Source.h:70
Source & WithSourceDetails(Aws::Vector< SourceDetail > &&value)
Definition: Source.h:176
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
Source & WithSourceIdentifier(Aws::String &&value)
Definition: Source.h:136
const Owner & GetOwner() const
Definition: Source.h:52
void SetOwner(Owner &&value)
Definition: Source.h:64
Source & AddSourceDetails(const SourceDetail &value)
Definition: Source.h:182
const Aws::String & GetSourceIdentifier() const
Definition: Source.h:86
void SetOwner(const Owner &value)
Definition: Source.h:58
void SetSourceIdentifier(const Aws::String &value)
Definition: Source.h:96
void SetSourceIdentifier(const char *value)
Definition: Source.h:116
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_CONFIGSERVICE_API
Source & WithSourceIdentifier(const Aws::String &value)
Definition: Source.h:126
Source & WithOwner(Owner &&value)
Definition: Source.h:76
JSON (JavaScript Object Notation).