1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/appmesh/AppMesh_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/appmesh/model/ResourceMetadata.h> 10 #include <aws/appmesh/model/VirtualRouterSpec.h> 11 #include <aws/appmesh/model/VirtualRouterStatus.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Utils 17 { 18 namespace Json 19 { 20 class JsonValue; 21 class JsonView; 22 } // namespace Json 23 } // namespace Utils 24 namespace AppMesh 25 { 26 namespace Model 27 { 28 29 /** 30 * <p>An object that represents a virtual router returned by a describe 31 * operation.</p><p><h3>See Also:</h3> <a 32 * href="http://docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/VirtualRouterData">AWS 33 * API Reference</a></p> 34 */ 35 class AWS_APPMESH_API VirtualRouterData 36 { 37 public: 38 VirtualRouterData(); 39 VirtualRouterData(Aws::Utils::Json::JsonView jsonValue); 40 VirtualRouterData& operator=(Aws::Utils::Json::JsonView jsonValue); 41 Aws::Utils::Json::JsonValue Jsonize() const; 42 43 44 /** 45 * <p>The name of the service mesh that the virtual router resides in.</p> 46 */ GetMeshName()47 inline const Aws::String& GetMeshName() const{ return m_meshName; } 48 49 /** 50 * <p>The name of the service mesh that the virtual router resides in.</p> 51 */ MeshNameHasBeenSet()52 inline bool MeshNameHasBeenSet() const { return m_meshNameHasBeenSet; } 53 54 /** 55 * <p>The name of the service mesh that the virtual router resides in.</p> 56 */ SetMeshName(const Aws::String & value)57 inline void SetMeshName(const Aws::String& value) { m_meshNameHasBeenSet = true; m_meshName = value; } 58 59 /** 60 * <p>The name of the service mesh that the virtual router resides in.</p> 61 */ SetMeshName(Aws::String && value)62 inline void SetMeshName(Aws::String&& value) { m_meshNameHasBeenSet = true; m_meshName = std::move(value); } 63 64 /** 65 * <p>The name of the service mesh that the virtual router resides in.</p> 66 */ SetMeshName(const char * value)67 inline void SetMeshName(const char* value) { m_meshNameHasBeenSet = true; m_meshName.assign(value); } 68 69 /** 70 * <p>The name of the service mesh that the virtual router resides in.</p> 71 */ WithMeshName(const Aws::String & value)72 inline VirtualRouterData& WithMeshName(const Aws::String& value) { SetMeshName(value); return *this;} 73 74 /** 75 * <p>The name of the service mesh that the virtual router resides in.</p> 76 */ WithMeshName(Aws::String && value)77 inline VirtualRouterData& WithMeshName(Aws::String&& value) { SetMeshName(std::move(value)); return *this;} 78 79 /** 80 * <p>The name of the service mesh that the virtual router resides in.</p> 81 */ WithMeshName(const char * value)82 inline VirtualRouterData& WithMeshName(const char* value) { SetMeshName(value); return *this;} 83 84 85 /** 86 * <p>The associated metadata for the virtual router.</p> 87 */ GetMetadata()88 inline const ResourceMetadata& GetMetadata() const{ return m_metadata; } 89 90 /** 91 * <p>The associated metadata for the virtual router.</p> 92 */ MetadataHasBeenSet()93 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } 94 95 /** 96 * <p>The associated metadata for the virtual router.</p> 97 */ SetMetadata(const ResourceMetadata & value)98 inline void SetMetadata(const ResourceMetadata& value) { m_metadataHasBeenSet = true; m_metadata = value; } 99 100 /** 101 * <p>The associated metadata for the virtual router.</p> 102 */ SetMetadata(ResourceMetadata && value)103 inline void SetMetadata(ResourceMetadata&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } 104 105 /** 106 * <p>The associated metadata for the virtual router.</p> 107 */ WithMetadata(const ResourceMetadata & value)108 inline VirtualRouterData& WithMetadata(const ResourceMetadata& value) { SetMetadata(value); return *this;} 109 110 /** 111 * <p>The associated metadata for the virtual router.</p> 112 */ WithMetadata(ResourceMetadata && value)113 inline VirtualRouterData& WithMetadata(ResourceMetadata&& value) { SetMetadata(std::move(value)); return *this;} 114 115 116 /** 117 * <p>The specifications of the virtual router.</p> 118 */ GetSpec()119 inline const VirtualRouterSpec& GetSpec() const{ return m_spec; } 120 121 /** 122 * <p>The specifications of the virtual router.</p> 123 */ SpecHasBeenSet()124 inline bool SpecHasBeenSet() const { return m_specHasBeenSet; } 125 126 /** 127 * <p>The specifications of the virtual router.</p> 128 */ SetSpec(const VirtualRouterSpec & value)129 inline void SetSpec(const VirtualRouterSpec& value) { m_specHasBeenSet = true; m_spec = value; } 130 131 /** 132 * <p>The specifications of the virtual router.</p> 133 */ SetSpec(VirtualRouterSpec && value)134 inline void SetSpec(VirtualRouterSpec&& value) { m_specHasBeenSet = true; m_spec = std::move(value); } 135 136 /** 137 * <p>The specifications of the virtual router.</p> 138 */ WithSpec(const VirtualRouterSpec & value)139 inline VirtualRouterData& WithSpec(const VirtualRouterSpec& value) { SetSpec(value); return *this;} 140 141 /** 142 * <p>The specifications of the virtual router.</p> 143 */ WithSpec(VirtualRouterSpec && value)144 inline VirtualRouterData& WithSpec(VirtualRouterSpec&& value) { SetSpec(std::move(value)); return *this;} 145 146 147 /** 148 * <p>The current status of the virtual router.</p> 149 */ GetStatus()150 inline const VirtualRouterStatus& GetStatus() const{ return m_status; } 151 152 /** 153 * <p>The current status of the virtual router.</p> 154 */ StatusHasBeenSet()155 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } 156 157 /** 158 * <p>The current status of the virtual router.</p> 159 */ SetStatus(const VirtualRouterStatus & value)160 inline void SetStatus(const VirtualRouterStatus& value) { m_statusHasBeenSet = true; m_status = value; } 161 162 /** 163 * <p>The current status of the virtual router.</p> 164 */ SetStatus(VirtualRouterStatus && value)165 inline void SetStatus(VirtualRouterStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } 166 167 /** 168 * <p>The current status of the virtual router.</p> 169 */ WithStatus(const VirtualRouterStatus & value)170 inline VirtualRouterData& WithStatus(const VirtualRouterStatus& value) { SetStatus(value); return *this;} 171 172 /** 173 * <p>The current status of the virtual router.</p> 174 */ WithStatus(VirtualRouterStatus && value)175 inline VirtualRouterData& WithStatus(VirtualRouterStatus&& value) { SetStatus(std::move(value)); return *this;} 176 177 178 /** 179 * <p>The name of the virtual router.</p> 180 */ GetVirtualRouterName()181 inline const Aws::String& GetVirtualRouterName() const{ return m_virtualRouterName; } 182 183 /** 184 * <p>The name of the virtual router.</p> 185 */ VirtualRouterNameHasBeenSet()186 inline bool VirtualRouterNameHasBeenSet() const { return m_virtualRouterNameHasBeenSet; } 187 188 /** 189 * <p>The name of the virtual router.</p> 190 */ SetVirtualRouterName(const Aws::String & value)191 inline void SetVirtualRouterName(const Aws::String& value) { m_virtualRouterNameHasBeenSet = true; m_virtualRouterName = value; } 192 193 /** 194 * <p>The name of the virtual router.</p> 195 */ SetVirtualRouterName(Aws::String && value)196 inline void SetVirtualRouterName(Aws::String&& value) { m_virtualRouterNameHasBeenSet = true; m_virtualRouterName = std::move(value); } 197 198 /** 199 * <p>The name of the virtual router.</p> 200 */ SetVirtualRouterName(const char * value)201 inline void SetVirtualRouterName(const char* value) { m_virtualRouterNameHasBeenSet = true; m_virtualRouterName.assign(value); } 202 203 /** 204 * <p>The name of the virtual router.</p> 205 */ WithVirtualRouterName(const Aws::String & value)206 inline VirtualRouterData& WithVirtualRouterName(const Aws::String& value) { SetVirtualRouterName(value); return *this;} 207 208 /** 209 * <p>The name of the virtual router.</p> 210 */ WithVirtualRouterName(Aws::String && value)211 inline VirtualRouterData& WithVirtualRouterName(Aws::String&& value) { SetVirtualRouterName(std::move(value)); return *this;} 212 213 /** 214 * <p>The name of the virtual router.</p> 215 */ WithVirtualRouterName(const char * value)216 inline VirtualRouterData& WithVirtualRouterName(const char* value) { SetVirtualRouterName(value); return *this;} 217 218 private: 219 220 Aws::String m_meshName; 221 bool m_meshNameHasBeenSet; 222 223 ResourceMetadata m_metadata; 224 bool m_metadataHasBeenSet; 225 226 VirtualRouterSpec m_spec; 227 bool m_specHasBeenSet; 228 229 VirtualRouterStatus m_status; 230 bool m_statusHasBeenSet; 231 232 Aws::String m_virtualRouterName; 233 bool m_virtualRouterNameHasBeenSet; 234 }; 235 236 } // namespace Model 237 } // namespace AppMesh 238 } // namespace Aws 239