AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
VirtualGatewaySpec.h
1
6#pragma once
7#include <aws/appmesh/AppMesh_EXPORTS.h>
8#include <aws/appmesh/model/VirtualGatewayBackendDefaults.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/appmesh/model/VirtualGatewayLogging.h>
11#include <aws/appmesh/model/VirtualGatewayListener.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace AppMesh
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_APPMESH_API VirtualGatewaySpec() = default;
41 AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const VirtualGatewayBackendDefaults& GetBackendDefaults() const { return m_backendDefaults; }
49 inline bool BackendDefaultsHasBeenSet() const { return m_backendDefaultsHasBeenSet; }
50 template<typename BackendDefaultsT = VirtualGatewayBackendDefaults>
51 void SetBackendDefaults(BackendDefaultsT&& value) { m_backendDefaultsHasBeenSet = true; m_backendDefaults = std::forward<BackendDefaultsT>(value); }
52 template<typename BackendDefaultsT = VirtualGatewayBackendDefaults>
53 VirtualGatewaySpec& WithBackendDefaults(BackendDefaultsT&& value) { SetBackendDefaults(std::forward<BackendDefaultsT>(value)); return *this;}
55
57
61 inline const Aws::Vector<VirtualGatewayListener>& GetListeners() const { return m_listeners; }
62 inline bool ListenersHasBeenSet() const { return m_listenersHasBeenSet; }
63 template<typename ListenersT = Aws::Vector<VirtualGatewayListener>>
64 void SetListeners(ListenersT&& value) { m_listenersHasBeenSet = true; m_listeners = std::forward<ListenersT>(value); }
65 template<typename ListenersT = Aws::Vector<VirtualGatewayListener>>
66 VirtualGatewaySpec& WithListeners(ListenersT&& value) { SetListeners(std::forward<ListenersT>(value)); return *this;}
67 template<typename ListenersT = VirtualGatewayListener>
68 VirtualGatewaySpec& AddListeners(ListenersT&& value) { m_listenersHasBeenSet = true; m_listeners.emplace_back(std::forward<ListenersT>(value)); return *this; }
70
72
73 inline const VirtualGatewayLogging& GetLogging() const { return m_logging; }
74 inline bool LoggingHasBeenSet() const { return m_loggingHasBeenSet; }
75 template<typename LoggingT = VirtualGatewayLogging>
76 void SetLogging(LoggingT&& value) { m_loggingHasBeenSet = true; m_logging = std::forward<LoggingT>(value); }
77 template<typename LoggingT = VirtualGatewayLogging>
78 VirtualGatewaySpec& WithLogging(LoggingT&& value) { SetLogging(std::forward<LoggingT>(value)); return *this;}
80 private:
81
82 VirtualGatewayBackendDefaults m_backendDefaults;
83 bool m_backendDefaultsHasBeenSet = false;
84
86 bool m_listenersHasBeenSet = false;
87
88 VirtualGatewayLogging m_logging;
89 bool m_loggingHasBeenSet = false;
90 };
91
92} // namespace Model
93} // namespace AppMesh
94} // namespace Aws
const VirtualGatewayLogging & GetLogging() const
VirtualGatewaySpec & AddListeners(ListenersT &&value)
AWS_APPMESH_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPMESH_API VirtualGatewaySpec & operator=(Aws::Utils::Json::JsonView jsonValue)
const VirtualGatewayBackendDefaults & GetBackendDefaults() const
AWS_APPMESH_API VirtualGatewaySpec()=default
VirtualGatewaySpec & WithListeners(ListenersT &&value)
VirtualGatewaySpec & WithBackendDefaults(BackendDefaultsT &&value)
void SetBackendDefaults(BackendDefaultsT &&value)
VirtualGatewaySpec & WithLogging(LoggingT &&value)
const Aws::Vector< VirtualGatewayListener > & GetListeners() const
AWS_APPMESH_API VirtualGatewaySpec(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue