AWS SDK for C++  0.12.9
AWS SDK for C++
ConditionalForwarder.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 DirectoryService
31 {
32 namespace Model
33 {
34 
41  {
42  public:
45  ConditionalForwarder& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
46  Aws::Utils::Json::JsonValue Jsonize() const;
47 
52  inline const Aws::String& GetRemoteDomainName() const{ return m_remoteDomainName; }
53 
58  inline void SetRemoteDomainName(const Aws::String& value) { m_remoteDomainNameHasBeenSet = true; m_remoteDomainName = value; }
59 
64  inline void SetRemoteDomainName(Aws::String&& value) { m_remoteDomainNameHasBeenSet = true; m_remoteDomainName = value; }
65 
70  inline void SetRemoteDomainName(const char* value) { m_remoteDomainNameHasBeenSet = true; m_remoteDomainName.assign(value); }
71 
76  inline ConditionalForwarder& WithRemoteDomainName(const Aws::String& value) { SetRemoteDomainName(value); return *this;}
77 
82  inline ConditionalForwarder& WithRemoteDomainName(Aws::String&& value) { SetRemoteDomainName(value); return *this;}
83 
88  inline ConditionalForwarder& WithRemoteDomainName(const char* value) { SetRemoteDomainName(value); return *this;}
89 
95  inline const Aws::Vector<Aws::String>& GetDnsIpAddrs() const{ return m_dnsIpAddrs; }
96 
102  inline void SetDnsIpAddrs(const Aws::Vector<Aws::String>& value) { m_dnsIpAddrsHasBeenSet = true; m_dnsIpAddrs = value; }
103 
109  inline void SetDnsIpAddrs(Aws::Vector<Aws::String>&& value) { m_dnsIpAddrsHasBeenSet = true; m_dnsIpAddrs = value; }
110 
116  inline ConditionalForwarder& WithDnsIpAddrs(const Aws::Vector<Aws::String>& value) { SetDnsIpAddrs(value); return *this;}
117 
123  inline ConditionalForwarder& WithDnsIpAddrs(Aws::Vector<Aws::String>&& value) { SetDnsIpAddrs(value); return *this;}
124 
130  inline ConditionalForwarder& AddDnsIpAddrs(const Aws::String& value) { m_dnsIpAddrsHasBeenSet = true; m_dnsIpAddrs.push_back(value); return *this; }
131 
137  inline ConditionalForwarder& AddDnsIpAddrs(Aws::String&& value) { m_dnsIpAddrsHasBeenSet = true; m_dnsIpAddrs.push_back(value); return *this; }
138 
144  inline ConditionalForwarder& AddDnsIpAddrs(const char* value) { m_dnsIpAddrsHasBeenSet = true; m_dnsIpAddrs.push_back(value); return *this; }
145 
151  inline const ReplicationScope& GetReplicationScope() const{ return m_replicationScope; }
152 
158  inline void SetReplicationScope(const ReplicationScope& value) { m_replicationScopeHasBeenSet = true; m_replicationScope = value; }
159 
165  inline void SetReplicationScope(ReplicationScope&& value) { m_replicationScopeHasBeenSet = true; m_replicationScope = value; }
166 
172  inline ConditionalForwarder& WithReplicationScope(const ReplicationScope& value) { SetReplicationScope(value); return *this;}
173 
179  inline ConditionalForwarder& WithReplicationScope(ReplicationScope&& value) { SetReplicationScope(value); return *this;}
180 
181  private:
182  Aws::String m_remoteDomainName;
183  bool m_remoteDomainNameHasBeenSet;
184  Aws::Vector<Aws::String> m_dnsIpAddrs;
185  bool m_dnsIpAddrsHasBeenSet;
186  ReplicationScope m_replicationScope;
187  bool m_replicationScopeHasBeenSet;
188  };
189 
190 } // namespace Model
191 } // namespace DirectoryService
192 } // namespace Aws
#define AWS_DIRECTORYSERVICE_API
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
ConditionalForwarder & WithReplicationScope(ReplicationScope &&value)
ConditionalForwarder & WithRemoteDomainName(const char *value)
const Aws::Vector< Aws::String > & GetDnsIpAddrs() const
ConditionalForwarder & WithRemoteDomainName(const Aws::String &value)
ConditionalForwarder & AddDnsIpAddrs(const char *value)
void SetDnsIpAddrs(const Aws::Vector< Aws::String > &value)
ConditionalForwarder & WithReplicationScope(const ReplicationScope &value)
void SetReplicationScope(const ReplicationScope &value)
void SetDnsIpAddrs(Aws::Vector< Aws::String > &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
ConditionalForwarder & WithDnsIpAddrs(const Aws::Vector< Aws::String > &value)
ConditionalForwarder & AddDnsIpAddrs(const Aws::String &value)
ConditionalForwarder & AddDnsIpAddrs(Aws::String &&value)
const ReplicationScope & GetReplicationScope() const
ConditionalForwarder & WithDnsIpAddrs(Aws::Vector< Aws::String > &&value)
ConditionalForwarder & WithRemoteDomainName(Aws::String &&value)
JSON (JavaScript Object Notation).