AWS SDK for C++  0.14.3
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 
85  inline const Aws::String& GetSourceIdentifier() const{ return m_sourceIdentifier; }
86 
94  inline void SetSourceIdentifier(const Aws::String& value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier = value; }
95 
103  inline void SetSourceIdentifier(Aws::String&& value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier = value; }
104 
112  inline void SetSourceIdentifier(const char* value) { m_sourceIdentifierHasBeenSet = true; m_sourceIdentifier.assign(value); }
113 
121  inline Source& WithSourceIdentifier(const Aws::String& value) { SetSourceIdentifier(value); return *this;}
122 
130  inline Source& WithSourceIdentifier(Aws::String&& value) { SetSourceIdentifier(value); return *this;}
131 
139  inline Source& WithSourceIdentifier(const char* value) { SetSourceIdentifier(value); return *this;}
140 
145  inline const Aws::Vector<SourceDetail>& GetSourceDetails() const{ return m_sourceDetails; }
146 
151  inline void SetSourceDetails(const Aws::Vector<SourceDetail>& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails = value; }
152 
157  inline void SetSourceDetails(Aws::Vector<SourceDetail>&& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails = value; }
158 
163  inline Source& WithSourceDetails(const Aws::Vector<SourceDetail>& value) { SetSourceDetails(value); return *this;}
164 
169  inline Source& WithSourceDetails(Aws::Vector<SourceDetail>&& value) { SetSourceDetails(value); return *this;}
170 
175  inline Source& AddSourceDetails(const SourceDetail& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails.push_back(value); return *this; }
176 
181  inline Source& AddSourceDetails(SourceDetail&& value) { m_sourceDetailsHasBeenSet = true; m_sourceDetails.push_back(value); return *this; }
182 
183  private:
184  Owner m_owner;
185  bool m_ownerHasBeenSet;
186  Aws::String m_sourceIdentifier;
187  bool m_sourceIdentifierHasBeenSet;
188  Aws::Vector<SourceDetail> m_sourceDetails;
189  bool m_sourceDetailsHasBeenSet;
190  };
191 
192 } // namespace Model
193 } // namespace ConfigService
194 } // namespace Aws
Source & WithSourceIdentifier(const char *value)
Definition: Source.h:139
Source & AddSourceDetails(SourceDetail &&value)
Definition: Source.h:181
void SetSourceIdentifier(Aws::String &&value)
Definition: Source.h:103
Source & WithSourceDetails(const Aws::Vector< SourceDetail > &value)
Definition: Source.h:163
void SetSourceDetails(const Aws::Vector< SourceDetail > &value)
Definition: Source.h:151
void SetSourceDetails(Aws::Vector< SourceDetail > &&value)
Definition: Source.h:157
const Aws::Vector< SourceDetail > & GetSourceDetails() const
Definition: Source.h:145
Source & WithOwner(const Owner &value)
Definition: Source.h:70
Source & WithSourceDetails(Aws::Vector< SourceDetail > &&value)
Definition: Source.h:169
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
Source & WithSourceIdentifier(Aws::String &&value)
Definition: Source.h:130
const Owner & GetOwner() const
Definition: Source.h:52
void SetOwner(Owner &&value)
Definition: Source.h:64
Source & AddSourceDetails(const SourceDetail &value)
Definition: Source.h:175
const Aws::String & GetSourceIdentifier() const
Definition: Source.h:85
void SetOwner(const Owner &value)
Definition: Source.h:58
void SetSourceIdentifier(const Aws::String &value)
Definition: Source.h:94
void SetSourceIdentifier(const char *value)
Definition: Source.h:112
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:121
Source & WithOwner(Owner &&value)
Definition: Source.h:76
JSON (JavaScript Object Notation).