AWS SDK for C++  0.12.9
AWS SDK for C++
NetworkBinding.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
16 #include <aws/ecs/ECS_EXPORTS.h>
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Json
25 {
26  class JsonValue;
27 } // namespace Json
28 } // namespace Utils
29 namespace ECS
30 {
31 namespace Model
32 {
33 
41  {
42  public:
45  NetworkBinding& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
46  Aws::Utils::Json::JsonValue Jsonize() const;
47 
51  inline const Aws::String& GetBindIP() const{ return m_bindIP; }
52 
56  inline void SetBindIP(const Aws::String& value) { m_bindIPHasBeenSet = true; m_bindIP = value; }
57 
61  inline void SetBindIP(Aws::String&& value) { m_bindIPHasBeenSet = true; m_bindIP = value; }
62 
66  inline void SetBindIP(const char* value) { m_bindIPHasBeenSet = true; m_bindIP.assign(value); }
67 
71  inline NetworkBinding& WithBindIP(const Aws::String& value) { SetBindIP(value); return *this;}
72 
76  inline NetworkBinding& WithBindIP(Aws::String&& value) { SetBindIP(value); return *this;}
77 
81  inline NetworkBinding& WithBindIP(const char* value) { SetBindIP(value); return *this;}
82 
87  inline long GetContainerPort() const{ return m_containerPort; }
88 
93  inline void SetContainerPort(long value) { m_containerPortHasBeenSet = true; m_containerPort = value; }
94 
99  inline NetworkBinding& WithContainerPort(long value) { SetContainerPort(value); return *this;}
100 
104  inline long GetHostPort() const{ return m_hostPort; }
105 
109  inline void SetHostPort(long value) { m_hostPortHasBeenSet = true; m_hostPort = value; }
110 
114  inline NetworkBinding& WithHostPort(long value) { SetHostPort(value); return *this;}
115 
119  inline const TransportProtocol& GetProtocol() const{ return m_protocol; }
120 
124  inline void SetProtocol(const TransportProtocol& value) { m_protocolHasBeenSet = true; m_protocol = value; }
125 
129  inline void SetProtocol(TransportProtocol&& value) { m_protocolHasBeenSet = true; m_protocol = value; }
130 
134  inline NetworkBinding& WithProtocol(const TransportProtocol& value) { SetProtocol(value); return *this;}
135 
139  inline NetworkBinding& WithProtocol(TransportProtocol&& value) { SetProtocol(value); return *this;}
140 
141  private:
142  Aws::String m_bindIP;
143  bool m_bindIPHasBeenSet;
144  long m_containerPort;
145  bool m_containerPortHasBeenSet;
146  long m_hostPort;
147  bool m_hostPortHasBeenSet;
148  TransportProtocol m_protocol;
149  bool m_protocolHasBeenSet;
150  };
151 
152 } // namespace Model
153 } // namespace ECS
154 } // namespace Aws
NetworkBinding & WithBindIP(Aws::String &&value)
void SetProtocol(TransportProtocol &&value)
NetworkBinding & WithProtocol(TransportProtocol &&value)
#define AWS_ECS_API
Definition: ECS_EXPORTS.h:34
void SetBindIP(const char *value)
NetworkBinding & WithBindIP(const Aws::String &value)
const TransportProtocol & GetProtocol() const
NetworkBinding & WithBindIP(const char *value)
const Aws::String & GetBindIP() const
void SetBindIP(Aws::String &&value)
NetworkBinding & WithContainerPort(long value)
NetworkBinding & WithProtocol(const TransportProtocol &value)
NetworkBinding & WithHostPort(long value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetBindIP(const Aws::String &value)
void SetProtocol(const TransportProtocol &value)
JSON (JavaScript Object Notation).