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/xray/XRay_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace XRay 23 { 24 namespace Model 25 { 26 27 /** 28 * <p/><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/xray-2016-04-12/ServiceId">AWS API 30 * Reference</a></p> 31 */ 32 class AWS_XRAY_API ServiceId 33 { 34 public: 35 ServiceId(); 36 ServiceId(Aws::Utils::Json::JsonView jsonValue); 37 ServiceId& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p/> 43 */ GetName()44 inline const Aws::String& GetName() const{ return m_name; } 45 46 /** 47 * <p/> 48 */ NameHasBeenSet()49 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 50 51 /** 52 * <p/> 53 */ SetName(const Aws::String & value)54 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 55 56 /** 57 * <p/> 58 */ SetName(Aws::String && value)59 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 60 61 /** 62 * <p/> 63 */ SetName(const char * value)64 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 65 66 /** 67 * <p/> 68 */ WithName(const Aws::String & value)69 inline ServiceId& WithName(const Aws::String& value) { SetName(value); return *this;} 70 71 /** 72 * <p/> 73 */ WithName(Aws::String && value)74 inline ServiceId& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 75 76 /** 77 * <p/> 78 */ WithName(const char * value)79 inline ServiceId& WithName(const char* value) { SetName(value); return *this;} 80 81 82 /** 83 * <p/> 84 */ GetNames()85 inline const Aws::Vector<Aws::String>& GetNames() const{ return m_names; } 86 87 /** 88 * <p/> 89 */ NamesHasBeenSet()90 inline bool NamesHasBeenSet() const { return m_namesHasBeenSet; } 91 92 /** 93 * <p/> 94 */ SetNames(const Aws::Vector<Aws::String> & value)95 inline void SetNames(const Aws::Vector<Aws::String>& value) { m_namesHasBeenSet = true; m_names = value; } 96 97 /** 98 * <p/> 99 */ SetNames(Aws::Vector<Aws::String> && value)100 inline void SetNames(Aws::Vector<Aws::String>&& value) { m_namesHasBeenSet = true; m_names = std::move(value); } 101 102 /** 103 * <p/> 104 */ WithNames(const Aws::Vector<Aws::String> & value)105 inline ServiceId& WithNames(const Aws::Vector<Aws::String>& value) { SetNames(value); return *this;} 106 107 /** 108 * <p/> 109 */ WithNames(Aws::Vector<Aws::String> && value)110 inline ServiceId& WithNames(Aws::Vector<Aws::String>&& value) { SetNames(std::move(value)); return *this;} 111 112 /** 113 * <p/> 114 */ AddNames(const Aws::String & value)115 inline ServiceId& AddNames(const Aws::String& value) { m_namesHasBeenSet = true; m_names.push_back(value); return *this; } 116 117 /** 118 * <p/> 119 */ AddNames(Aws::String && value)120 inline ServiceId& AddNames(Aws::String&& value) { m_namesHasBeenSet = true; m_names.push_back(std::move(value)); return *this; } 121 122 /** 123 * <p/> 124 */ AddNames(const char * value)125 inline ServiceId& AddNames(const char* value) { m_namesHasBeenSet = true; m_names.push_back(value); return *this; } 126 127 128 /** 129 * <p/> 130 */ GetAccountId()131 inline const Aws::String& GetAccountId() const{ return m_accountId; } 132 133 /** 134 * <p/> 135 */ AccountIdHasBeenSet()136 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } 137 138 /** 139 * <p/> 140 */ SetAccountId(const Aws::String & value)141 inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } 142 143 /** 144 * <p/> 145 */ SetAccountId(Aws::String && value)146 inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } 147 148 /** 149 * <p/> 150 */ SetAccountId(const char * value)151 inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } 152 153 /** 154 * <p/> 155 */ WithAccountId(const Aws::String & value)156 inline ServiceId& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} 157 158 /** 159 * <p/> 160 */ WithAccountId(Aws::String && value)161 inline ServiceId& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} 162 163 /** 164 * <p/> 165 */ WithAccountId(const char * value)166 inline ServiceId& WithAccountId(const char* value) { SetAccountId(value); return *this;} 167 168 169 /** 170 * <p/> 171 */ GetType()172 inline const Aws::String& GetType() const{ return m_type; } 173 174 /** 175 * <p/> 176 */ TypeHasBeenSet()177 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } 178 179 /** 180 * <p/> 181 */ SetType(const Aws::String & value)182 inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } 183 184 /** 185 * <p/> 186 */ SetType(Aws::String && value)187 inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } 188 189 /** 190 * <p/> 191 */ SetType(const char * value)192 inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } 193 194 /** 195 * <p/> 196 */ WithType(const Aws::String & value)197 inline ServiceId& WithType(const Aws::String& value) { SetType(value); return *this;} 198 199 /** 200 * <p/> 201 */ WithType(Aws::String && value)202 inline ServiceId& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} 203 204 /** 205 * <p/> 206 */ WithType(const char * value)207 inline ServiceId& WithType(const char* value) { SetType(value); return *this;} 208 209 private: 210 211 Aws::String m_name; 212 bool m_nameHasBeenSet; 213 214 Aws::Vector<Aws::String> m_names; 215 bool m_namesHasBeenSet; 216 217 Aws::String m_accountId; 218 bool m_accountIdHasBeenSet; 219 220 Aws::String m_type; 221 bool m_typeHasBeenSet; 222 }; 223 224 } // namespace Model 225 } // namespace XRay 226 } // namespace Aws 227