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/gamelift/GameLift_EXPORTS.h> 8 #include <aws/gamelift/GameLiftRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/gamelift/model/BackfillMode.h> 12 #include <aws/gamelift/model/FlexMatchMode.h> 13 #include <aws/gamelift/model/GameProperty.h> 14 #include <utility> 15 16 namespace Aws 17 { 18 namespace GameLift 19 { 20 namespace Model 21 { 22 23 /** 24 * <p>Represents the input for a request operation.</p><p><h3>See Also:</h3> <a 25 * href="http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/UpdateMatchmakingConfigurationInput">AWS 26 * API Reference</a></p> 27 */ 28 class AWS_GAMELIFT_API UpdateMatchmakingConfigurationRequest : public GameLiftRequest 29 { 30 public: 31 UpdateMatchmakingConfigurationRequest(); 32 33 // Service request name is the Operation name which will send this request out, 34 // each operation should has unique request name, so that we can get operation's name from this request. 35 // Note: this is not true for response, multiple operations may have the same response name, 36 // so we can not get operation's name from response. GetServiceRequestName()37 inline virtual const char* GetServiceRequestName() const override { return "UpdateMatchmakingConfiguration"; } 38 39 Aws::String SerializePayload() const override; 40 41 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 42 43 44 /** 45 * <p>A unique identifier for the matchmaking configuration to update. You can use 46 * either the configuration name or ARN value. </p> 47 */ GetName()48 inline const Aws::String& GetName() const{ return m_name; } 49 50 /** 51 * <p>A unique identifier for the matchmaking configuration to update. You can use 52 * either the configuration name or ARN value. </p> 53 */ NameHasBeenSet()54 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 55 56 /** 57 * <p>A unique identifier for the matchmaking configuration to update. You can use 58 * either the configuration name or ARN value. </p> 59 */ SetName(const Aws::String & value)60 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 61 62 /** 63 * <p>A unique identifier for the matchmaking configuration to update. You can use 64 * either the configuration name or ARN value. </p> 65 */ SetName(Aws::String && value)66 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 67 68 /** 69 * <p>A unique identifier for the matchmaking configuration to update. You can use 70 * either the configuration name or ARN value. </p> 71 */ SetName(const char * value)72 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 73 74 /** 75 * <p>A unique identifier for the matchmaking configuration to update. You can use 76 * either the configuration name or ARN value. </p> 77 */ WithName(const Aws::String & value)78 inline UpdateMatchmakingConfigurationRequest& WithName(const Aws::String& value) { SetName(value); return *this;} 79 80 /** 81 * <p>A unique identifier for the matchmaking configuration to update. You can use 82 * either the configuration name or ARN value. </p> 83 */ WithName(Aws::String && value)84 inline UpdateMatchmakingConfigurationRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 85 86 /** 87 * <p>A unique identifier for the matchmaking configuration to update. You can use 88 * either the configuration name or ARN value. </p> 89 */ WithName(const char * value)90 inline UpdateMatchmakingConfigurationRequest& WithName(const char* value) { SetName(value); return *this;} 91 92 93 /** 94 * <p>A descriptive label that is associated with matchmaking configuration.</p> 95 */ GetDescription()96 inline const Aws::String& GetDescription() const{ return m_description; } 97 98 /** 99 * <p>A descriptive label that is associated with matchmaking configuration.</p> 100 */ DescriptionHasBeenSet()101 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } 102 103 /** 104 * <p>A descriptive label that is associated with matchmaking configuration.</p> 105 */ SetDescription(const Aws::String & value)106 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } 107 108 /** 109 * <p>A descriptive label that is associated with matchmaking configuration.</p> 110 */ SetDescription(Aws::String && value)111 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } 112 113 /** 114 * <p>A descriptive label that is associated with matchmaking configuration.</p> 115 */ SetDescription(const char * value)116 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } 117 118 /** 119 * <p>A descriptive label that is associated with matchmaking configuration.</p> 120 */ WithDescription(const Aws::String & value)121 inline UpdateMatchmakingConfigurationRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} 122 123 /** 124 * <p>A descriptive label that is associated with matchmaking configuration.</p> 125 */ WithDescription(Aws::String && value)126 inline UpdateMatchmakingConfigurationRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} 127 128 /** 129 * <p>A descriptive label that is associated with matchmaking configuration.</p> 130 */ WithDescription(const char * value)131 inline UpdateMatchmakingConfigurationRequest& WithDescription(const char* value) { SetDescription(value); return *this;} 132 133 134 /** 135 * <p>The Amazon Resource Name (<a 136 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 137 * that is assigned to a GameLift game session queue resource and uniquely 138 * identifies it. ARNs are unique across all Regions. Format is 139 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 140 * name></code>. Queues can be located in any Region. Queues are used to start 141 * new GameLift-hosted game sessions for matches that are created with this 142 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 143 * <code>STANDALONE</code>, do not set this parameter.</p> 144 */ GetGameSessionQueueArns()145 inline const Aws::Vector<Aws::String>& GetGameSessionQueueArns() const{ return m_gameSessionQueueArns; } 146 147 /** 148 * <p>The Amazon Resource Name (<a 149 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 150 * that is assigned to a GameLift game session queue resource and uniquely 151 * identifies it. ARNs are unique across all Regions. Format is 152 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 153 * name></code>. Queues can be located in any Region. Queues are used to start 154 * new GameLift-hosted game sessions for matches that are created with this 155 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 156 * <code>STANDALONE</code>, do not set this parameter.</p> 157 */ GameSessionQueueArnsHasBeenSet()158 inline bool GameSessionQueueArnsHasBeenSet() const { return m_gameSessionQueueArnsHasBeenSet; } 159 160 /** 161 * <p>The Amazon Resource Name (<a 162 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 163 * that is assigned to a GameLift game session queue resource and uniquely 164 * identifies it. ARNs are unique across all Regions. Format is 165 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 166 * name></code>. Queues can be located in any Region. Queues are used to start 167 * new GameLift-hosted game sessions for matches that are created with this 168 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 169 * <code>STANDALONE</code>, do not set this parameter.</p> 170 */ SetGameSessionQueueArns(const Aws::Vector<Aws::String> & value)171 inline void SetGameSessionQueueArns(const Aws::Vector<Aws::String>& value) { m_gameSessionQueueArnsHasBeenSet = true; m_gameSessionQueueArns = value; } 172 173 /** 174 * <p>The Amazon Resource Name (<a 175 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 176 * that is assigned to a GameLift game session queue resource and uniquely 177 * identifies it. ARNs are unique across all Regions. Format is 178 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 179 * name></code>. Queues can be located in any Region. Queues are used to start 180 * new GameLift-hosted game sessions for matches that are created with this 181 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 182 * <code>STANDALONE</code>, do not set this parameter.</p> 183 */ SetGameSessionQueueArns(Aws::Vector<Aws::String> && value)184 inline void SetGameSessionQueueArns(Aws::Vector<Aws::String>&& value) { m_gameSessionQueueArnsHasBeenSet = true; m_gameSessionQueueArns = std::move(value); } 185 186 /** 187 * <p>The Amazon Resource Name (<a 188 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 189 * that is assigned to a GameLift game session queue resource and uniquely 190 * identifies it. ARNs are unique across all Regions. Format is 191 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 192 * name></code>. Queues can be located in any Region. Queues are used to start 193 * new GameLift-hosted game sessions for matches that are created with this 194 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 195 * <code>STANDALONE</code>, do not set this parameter.</p> 196 */ WithGameSessionQueueArns(const Aws::Vector<Aws::String> & value)197 inline UpdateMatchmakingConfigurationRequest& WithGameSessionQueueArns(const Aws::Vector<Aws::String>& value) { SetGameSessionQueueArns(value); return *this;} 198 199 /** 200 * <p>The Amazon Resource Name (<a 201 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 202 * that is assigned to a GameLift game session queue resource and uniquely 203 * identifies it. ARNs are unique across all Regions. Format is 204 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 205 * name></code>. Queues can be located in any Region. Queues are used to start 206 * new GameLift-hosted game sessions for matches that are created with this 207 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 208 * <code>STANDALONE</code>, do not set this parameter.</p> 209 */ WithGameSessionQueueArns(Aws::Vector<Aws::String> && value)210 inline UpdateMatchmakingConfigurationRequest& WithGameSessionQueueArns(Aws::Vector<Aws::String>&& value) { SetGameSessionQueueArns(std::move(value)); return *this;} 211 212 /** 213 * <p>The Amazon Resource Name (<a 214 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 215 * that is assigned to a GameLift game session queue resource and uniquely 216 * identifies it. ARNs are unique across all Regions. Format is 217 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 218 * name></code>. Queues can be located in any Region. Queues are used to start 219 * new GameLift-hosted game sessions for matches that are created with this 220 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 221 * <code>STANDALONE</code>, do not set this parameter.</p> 222 */ AddGameSessionQueueArns(const Aws::String & value)223 inline UpdateMatchmakingConfigurationRequest& AddGameSessionQueueArns(const Aws::String& value) { m_gameSessionQueueArnsHasBeenSet = true; m_gameSessionQueueArns.push_back(value); return *this; } 224 225 /** 226 * <p>The Amazon Resource Name (<a 227 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 228 * that is assigned to a GameLift game session queue resource and uniquely 229 * identifies it. ARNs are unique across all Regions. Format is 230 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 231 * name></code>. Queues can be located in any Region. Queues are used to start 232 * new GameLift-hosted game sessions for matches that are created with this 233 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 234 * <code>STANDALONE</code>, do not set this parameter.</p> 235 */ AddGameSessionQueueArns(Aws::String && value)236 inline UpdateMatchmakingConfigurationRequest& AddGameSessionQueueArns(Aws::String&& value) { m_gameSessionQueueArnsHasBeenSet = true; m_gameSessionQueueArns.push_back(std::move(value)); return *this; } 237 238 /** 239 * <p>The Amazon Resource Name (<a 240 * href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html">ARN</a>) 241 * that is assigned to a GameLift game session queue resource and uniquely 242 * identifies it. ARNs are unique across all Regions. Format is 243 * <code>arn:aws:gamelift:<region>::gamesessionqueue/<queue 244 * name></code>. Queues can be located in any Region. Queues are used to start 245 * new GameLift-hosted game sessions for matches that are created with this 246 * matchmaking configuration. If <code>FlexMatchMode</code> is set to 247 * <code>STANDALONE</code>, do not set this parameter.</p> 248 */ AddGameSessionQueueArns(const char * value)249 inline UpdateMatchmakingConfigurationRequest& AddGameSessionQueueArns(const char* value) { m_gameSessionQueueArnsHasBeenSet = true; m_gameSessionQueueArns.push_back(value); return *this; } 250 251 252 /** 253 * <p>The maximum duration, in seconds, that a matchmaking ticket can remain in 254 * process before timing out. Requests that fail due to timing out can be 255 * resubmitted as needed.</p> 256 */ GetRequestTimeoutSeconds()257 inline int GetRequestTimeoutSeconds() const{ return m_requestTimeoutSeconds; } 258 259 /** 260 * <p>The maximum duration, in seconds, that a matchmaking ticket can remain in 261 * process before timing out. Requests that fail due to timing out can be 262 * resubmitted as needed.</p> 263 */ RequestTimeoutSecondsHasBeenSet()264 inline bool RequestTimeoutSecondsHasBeenSet() const { return m_requestTimeoutSecondsHasBeenSet; } 265 266 /** 267 * <p>The maximum duration, in seconds, that a matchmaking ticket can remain in 268 * process before timing out. Requests that fail due to timing out can be 269 * resubmitted as needed.</p> 270 */ SetRequestTimeoutSeconds(int value)271 inline void SetRequestTimeoutSeconds(int value) { m_requestTimeoutSecondsHasBeenSet = true; m_requestTimeoutSeconds = value; } 272 273 /** 274 * <p>The maximum duration, in seconds, that a matchmaking ticket can remain in 275 * process before timing out. Requests that fail due to timing out can be 276 * resubmitted as needed.</p> 277 */ WithRequestTimeoutSeconds(int value)278 inline UpdateMatchmakingConfigurationRequest& WithRequestTimeoutSeconds(int value) { SetRequestTimeoutSeconds(value); return *this;} 279 280 281 /** 282 * <p>The length of time (in seconds) to wait for players to accept a proposed 283 * match, if acceptance is required.</p> 284 */ GetAcceptanceTimeoutSeconds()285 inline int GetAcceptanceTimeoutSeconds() const{ return m_acceptanceTimeoutSeconds; } 286 287 /** 288 * <p>The length of time (in seconds) to wait for players to accept a proposed 289 * match, if acceptance is required.</p> 290 */ AcceptanceTimeoutSecondsHasBeenSet()291 inline bool AcceptanceTimeoutSecondsHasBeenSet() const { return m_acceptanceTimeoutSecondsHasBeenSet; } 292 293 /** 294 * <p>The length of time (in seconds) to wait for players to accept a proposed 295 * match, if acceptance is required.</p> 296 */ SetAcceptanceTimeoutSeconds(int value)297 inline void SetAcceptanceTimeoutSeconds(int value) { m_acceptanceTimeoutSecondsHasBeenSet = true; m_acceptanceTimeoutSeconds = value; } 298 299 /** 300 * <p>The length of time (in seconds) to wait for players to accept a proposed 301 * match, if acceptance is required.</p> 302 */ WithAcceptanceTimeoutSeconds(int value)303 inline UpdateMatchmakingConfigurationRequest& WithAcceptanceTimeoutSeconds(int value) { SetAcceptanceTimeoutSeconds(value); return *this;} 304 305 306 /** 307 * <p>A flag that indicates whether a match that was created with this 308 * configuration must be accepted by the matched players. To require acceptance, 309 * set to TRUE. With this option enabled, matchmaking tickets use the status 310 * <code>REQUIRES_ACCEPTANCE</code> to indicate when a completed potential match is 311 * waiting for player acceptance. </p> 312 */ GetAcceptanceRequired()313 inline bool GetAcceptanceRequired() const{ return m_acceptanceRequired; } 314 315 /** 316 * <p>A flag that indicates whether a match that was created with this 317 * configuration must be accepted by the matched players. To require acceptance, 318 * set to TRUE. With this option enabled, matchmaking tickets use the status 319 * <code>REQUIRES_ACCEPTANCE</code> to indicate when a completed potential match is 320 * waiting for player acceptance. </p> 321 */ AcceptanceRequiredHasBeenSet()322 inline bool AcceptanceRequiredHasBeenSet() const { return m_acceptanceRequiredHasBeenSet; } 323 324 /** 325 * <p>A flag that indicates whether a match that was created with this 326 * configuration must be accepted by the matched players. To require acceptance, 327 * set to TRUE. With this option enabled, matchmaking tickets use the status 328 * <code>REQUIRES_ACCEPTANCE</code> to indicate when a completed potential match is 329 * waiting for player acceptance. </p> 330 */ SetAcceptanceRequired(bool value)331 inline void SetAcceptanceRequired(bool value) { m_acceptanceRequiredHasBeenSet = true; m_acceptanceRequired = value; } 332 333 /** 334 * <p>A flag that indicates whether a match that was created with this 335 * configuration must be accepted by the matched players. To require acceptance, 336 * set to TRUE. With this option enabled, matchmaking tickets use the status 337 * <code>REQUIRES_ACCEPTANCE</code> to indicate when a completed potential match is 338 * waiting for player acceptance. </p> 339 */ WithAcceptanceRequired(bool value)340 inline UpdateMatchmakingConfigurationRequest& WithAcceptanceRequired(bool value) { SetAcceptanceRequired(value); return *this;} 341 342 343 /** 344 * <p>A unique identifier for the matchmaking rule set to use with this 345 * configuration. You can use either the rule set name or ARN value. A matchmaking 346 * configuration can only use rule sets that are defined in the same Region.</p> 347 */ GetRuleSetName()348 inline const Aws::String& GetRuleSetName() const{ return m_ruleSetName; } 349 350 /** 351 * <p>A unique identifier for the matchmaking rule set to use with this 352 * configuration. You can use either the rule set name or ARN value. A matchmaking 353 * configuration can only use rule sets that are defined in the same Region.</p> 354 */ RuleSetNameHasBeenSet()355 inline bool RuleSetNameHasBeenSet() const { return m_ruleSetNameHasBeenSet; } 356 357 /** 358 * <p>A unique identifier for the matchmaking rule set to use with this 359 * configuration. You can use either the rule set name or ARN value. A matchmaking 360 * configuration can only use rule sets that are defined in the same Region.</p> 361 */ SetRuleSetName(const Aws::String & value)362 inline void SetRuleSetName(const Aws::String& value) { m_ruleSetNameHasBeenSet = true; m_ruleSetName = value; } 363 364 /** 365 * <p>A unique identifier for the matchmaking rule set to use with this 366 * configuration. You can use either the rule set name or ARN value. A matchmaking 367 * configuration can only use rule sets that are defined in the same Region.</p> 368 */ SetRuleSetName(Aws::String && value)369 inline void SetRuleSetName(Aws::String&& value) { m_ruleSetNameHasBeenSet = true; m_ruleSetName = std::move(value); } 370 371 /** 372 * <p>A unique identifier for the matchmaking rule set to use with this 373 * configuration. You can use either the rule set name or ARN value. A matchmaking 374 * configuration can only use rule sets that are defined in the same Region.</p> 375 */ SetRuleSetName(const char * value)376 inline void SetRuleSetName(const char* value) { m_ruleSetNameHasBeenSet = true; m_ruleSetName.assign(value); } 377 378 /** 379 * <p>A unique identifier for the matchmaking rule set to use with this 380 * configuration. You can use either the rule set name or ARN value. A matchmaking 381 * configuration can only use rule sets that are defined in the same Region.</p> 382 */ WithRuleSetName(const Aws::String & value)383 inline UpdateMatchmakingConfigurationRequest& WithRuleSetName(const Aws::String& value) { SetRuleSetName(value); return *this;} 384 385 /** 386 * <p>A unique identifier for the matchmaking rule set to use with this 387 * configuration. You can use either the rule set name or ARN value. A matchmaking 388 * configuration can only use rule sets that are defined in the same Region.</p> 389 */ WithRuleSetName(Aws::String && value)390 inline UpdateMatchmakingConfigurationRequest& WithRuleSetName(Aws::String&& value) { SetRuleSetName(std::move(value)); return *this;} 391 392 /** 393 * <p>A unique identifier for the matchmaking rule set to use with this 394 * configuration. You can use either the rule set name or ARN value. A matchmaking 395 * configuration can only use rule sets that are defined in the same Region.</p> 396 */ WithRuleSetName(const char * value)397 inline UpdateMatchmakingConfigurationRequest& WithRuleSetName(const char* value) { SetRuleSetName(value); return *this;} 398 399 400 /** 401 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 402 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 403 * Setting up notifications for matchmaking</a> for more information.</p> 404 */ GetNotificationTarget()405 inline const Aws::String& GetNotificationTarget() const{ return m_notificationTarget; } 406 407 /** 408 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 409 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 410 * Setting up notifications for matchmaking</a> for more information.</p> 411 */ NotificationTargetHasBeenSet()412 inline bool NotificationTargetHasBeenSet() const { return m_notificationTargetHasBeenSet; } 413 414 /** 415 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 416 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 417 * Setting up notifications for matchmaking</a> for more information.</p> 418 */ SetNotificationTarget(const Aws::String & value)419 inline void SetNotificationTarget(const Aws::String& value) { m_notificationTargetHasBeenSet = true; m_notificationTarget = value; } 420 421 /** 422 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 423 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 424 * Setting up notifications for matchmaking</a> for more information.</p> 425 */ SetNotificationTarget(Aws::String && value)426 inline void SetNotificationTarget(Aws::String&& value) { m_notificationTargetHasBeenSet = true; m_notificationTarget = std::move(value); } 427 428 /** 429 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 430 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 431 * Setting up notifications for matchmaking</a> for more information.</p> 432 */ SetNotificationTarget(const char * value)433 inline void SetNotificationTarget(const char* value) { m_notificationTargetHasBeenSet = true; m_notificationTarget.assign(value); } 434 435 /** 436 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 437 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 438 * Setting up notifications for matchmaking</a> for more information.</p> 439 */ WithNotificationTarget(const Aws::String & value)440 inline UpdateMatchmakingConfigurationRequest& WithNotificationTarget(const Aws::String& value) { SetNotificationTarget(value); return *this;} 441 442 /** 443 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 444 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 445 * Setting up notifications for matchmaking</a> for more information.</p> 446 */ WithNotificationTarget(Aws::String && value)447 inline UpdateMatchmakingConfigurationRequest& WithNotificationTarget(Aws::String&& value) { SetNotificationTarget(std::move(value)); return *this;} 448 449 /** 450 * <p>An SNS topic ARN that is set up to receive matchmaking notifications. See <a 451 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html"> 452 * Setting up notifications for matchmaking</a> for more information.</p> 453 */ WithNotificationTarget(const char * value)454 inline UpdateMatchmakingConfigurationRequest& WithNotificationTarget(const char* value) { SetNotificationTarget(value); return *this;} 455 456 457 /** 458 * <p>The number of player slots in a match to keep open for future players. For 459 * example, if the configuration's rule set specifies a match for a single 460 * 12-person team, and the additional player count is set to 2, only 10 players are 461 * selected for the match. This parameter is not used if <code>FlexMatchMode</code> 462 * is set to <code>STANDALONE</code>.</p> 463 */ GetAdditionalPlayerCount()464 inline int GetAdditionalPlayerCount() const{ return m_additionalPlayerCount; } 465 466 /** 467 * <p>The number of player slots in a match to keep open for future players. For 468 * example, if the configuration's rule set specifies a match for a single 469 * 12-person team, and the additional player count is set to 2, only 10 players are 470 * selected for the match. This parameter is not used if <code>FlexMatchMode</code> 471 * is set to <code>STANDALONE</code>.</p> 472 */ AdditionalPlayerCountHasBeenSet()473 inline bool AdditionalPlayerCountHasBeenSet() const { return m_additionalPlayerCountHasBeenSet; } 474 475 /** 476 * <p>The number of player slots in a match to keep open for future players. For 477 * example, if the configuration's rule set specifies a match for a single 478 * 12-person team, and the additional player count is set to 2, only 10 players are 479 * selected for the match. This parameter is not used if <code>FlexMatchMode</code> 480 * is set to <code>STANDALONE</code>.</p> 481 */ SetAdditionalPlayerCount(int value)482 inline void SetAdditionalPlayerCount(int value) { m_additionalPlayerCountHasBeenSet = true; m_additionalPlayerCount = value; } 483 484 /** 485 * <p>The number of player slots in a match to keep open for future players. For 486 * example, if the configuration's rule set specifies a match for a single 487 * 12-person team, and the additional player count is set to 2, only 10 players are 488 * selected for the match. This parameter is not used if <code>FlexMatchMode</code> 489 * is set to <code>STANDALONE</code>.</p> 490 */ WithAdditionalPlayerCount(int value)491 inline UpdateMatchmakingConfigurationRequest& WithAdditionalPlayerCount(int value) { SetAdditionalPlayerCount(value); return *this;} 492 493 494 /** 495 * <p>Information to add to all events related to the matchmaking configuration. 496 * </p> 497 */ GetCustomEventData()498 inline const Aws::String& GetCustomEventData() const{ return m_customEventData; } 499 500 /** 501 * <p>Information to add to all events related to the matchmaking configuration. 502 * </p> 503 */ CustomEventDataHasBeenSet()504 inline bool CustomEventDataHasBeenSet() const { return m_customEventDataHasBeenSet; } 505 506 /** 507 * <p>Information to add to all events related to the matchmaking configuration. 508 * </p> 509 */ SetCustomEventData(const Aws::String & value)510 inline void SetCustomEventData(const Aws::String& value) { m_customEventDataHasBeenSet = true; m_customEventData = value; } 511 512 /** 513 * <p>Information to add to all events related to the matchmaking configuration. 514 * </p> 515 */ SetCustomEventData(Aws::String && value)516 inline void SetCustomEventData(Aws::String&& value) { m_customEventDataHasBeenSet = true; m_customEventData = std::move(value); } 517 518 /** 519 * <p>Information to add to all events related to the matchmaking configuration. 520 * </p> 521 */ SetCustomEventData(const char * value)522 inline void SetCustomEventData(const char* value) { m_customEventDataHasBeenSet = true; m_customEventData.assign(value); } 523 524 /** 525 * <p>Information to add to all events related to the matchmaking configuration. 526 * </p> 527 */ WithCustomEventData(const Aws::String & value)528 inline UpdateMatchmakingConfigurationRequest& WithCustomEventData(const Aws::String& value) { SetCustomEventData(value); return *this;} 529 530 /** 531 * <p>Information to add to all events related to the matchmaking configuration. 532 * </p> 533 */ WithCustomEventData(Aws::String && value)534 inline UpdateMatchmakingConfigurationRequest& WithCustomEventData(Aws::String&& value) { SetCustomEventData(std::move(value)); return *this;} 535 536 /** 537 * <p>Information to add to all events related to the matchmaking configuration. 538 * </p> 539 */ WithCustomEventData(const char * value)540 inline UpdateMatchmakingConfigurationRequest& WithCustomEventData(const char* value) { SetCustomEventData(value); return *this;} 541 542 543 /** 544 * <p>A set of custom properties for a game session, formatted as key:value pairs. 545 * These properties are passed to a game server process in the <a>GameSession</a> 546 * object with a request to start a new game session (see <a 547 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 548 * a Game Session</a>). This information is added to the new <a>GameSession</a> 549 * object that is created for a successful match. This parameter is not used if 550 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 551 */ GetGameProperties()552 inline const Aws::Vector<GameProperty>& GetGameProperties() const{ return m_gameProperties; } 553 554 /** 555 * <p>A set of custom properties for a game session, formatted as key:value pairs. 556 * These properties are passed to a game server process in the <a>GameSession</a> 557 * object with a request to start a new game session (see <a 558 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 559 * a Game Session</a>). This information is added to the new <a>GameSession</a> 560 * object that is created for a successful match. This parameter is not used if 561 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 562 */ GamePropertiesHasBeenSet()563 inline bool GamePropertiesHasBeenSet() const { return m_gamePropertiesHasBeenSet; } 564 565 /** 566 * <p>A set of custom properties for a game session, formatted as key:value pairs. 567 * These properties are passed to a game server process in the <a>GameSession</a> 568 * object with a request to start a new game session (see <a 569 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 570 * a Game Session</a>). This information is added to the new <a>GameSession</a> 571 * object that is created for a successful match. This parameter is not used if 572 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 573 */ SetGameProperties(const Aws::Vector<GameProperty> & value)574 inline void SetGameProperties(const Aws::Vector<GameProperty>& value) { m_gamePropertiesHasBeenSet = true; m_gameProperties = value; } 575 576 /** 577 * <p>A set of custom properties for a game session, formatted as key:value pairs. 578 * These properties are passed to a game server process in the <a>GameSession</a> 579 * object with a request to start a new game session (see <a 580 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 581 * a Game Session</a>). This information is added to the new <a>GameSession</a> 582 * object that is created for a successful match. This parameter is not used if 583 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 584 */ SetGameProperties(Aws::Vector<GameProperty> && value)585 inline void SetGameProperties(Aws::Vector<GameProperty>&& value) { m_gamePropertiesHasBeenSet = true; m_gameProperties = std::move(value); } 586 587 /** 588 * <p>A set of custom properties for a game session, formatted as key:value pairs. 589 * These properties are passed to a game server process in the <a>GameSession</a> 590 * object with a request to start a new game session (see <a 591 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 592 * a Game Session</a>). This information is added to the new <a>GameSession</a> 593 * object that is created for a successful match. This parameter is not used if 594 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 595 */ WithGameProperties(const Aws::Vector<GameProperty> & value)596 inline UpdateMatchmakingConfigurationRequest& WithGameProperties(const Aws::Vector<GameProperty>& value) { SetGameProperties(value); return *this;} 597 598 /** 599 * <p>A set of custom properties for a game session, formatted as key:value pairs. 600 * These properties are passed to a game server process in the <a>GameSession</a> 601 * object with a request to start a new game session (see <a 602 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 603 * a Game Session</a>). This information is added to the new <a>GameSession</a> 604 * object that is created for a successful match. This parameter is not used if 605 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 606 */ WithGameProperties(Aws::Vector<GameProperty> && value)607 inline UpdateMatchmakingConfigurationRequest& WithGameProperties(Aws::Vector<GameProperty>&& value) { SetGameProperties(std::move(value)); return *this;} 608 609 /** 610 * <p>A set of custom properties for a game session, formatted as key:value pairs. 611 * These properties are passed to a game server process in the <a>GameSession</a> 612 * object with a request to start a new game session (see <a 613 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 614 * a Game Session</a>). This information is added to the new <a>GameSession</a> 615 * object that is created for a successful match. This parameter is not used if 616 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 617 */ AddGameProperties(const GameProperty & value)618 inline UpdateMatchmakingConfigurationRequest& AddGameProperties(const GameProperty& value) { m_gamePropertiesHasBeenSet = true; m_gameProperties.push_back(value); return *this; } 619 620 /** 621 * <p>A set of custom properties for a game session, formatted as key:value pairs. 622 * These properties are passed to a game server process in the <a>GameSession</a> 623 * object with a request to start a new game session (see <a 624 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 625 * a Game Session</a>). This information is added to the new <a>GameSession</a> 626 * object that is created for a successful match. This parameter is not used if 627 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 628 */ AddGameProperties(GameProperty && value)629 inline UpdateMatchmakingConfigurationRequest& AddGameProperties(GameProperty&& value) { m_gamePropertiesHasBeenSet = true; m_gameProperties.push_back(std::move(value)); return *this; } 630 631 632 /** 633 * <p>A set of custom game session properties, formatted as a single string value. 634 * This data is passed to a game server process in the <a>GameSession</a> object 635 * with a request to start a new game session (see <a 636 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 637 * a Game Session</a>). This information is added to the new <a>GameSession</a> 638 * object that is created for a successful match. This parameter is not used if 639 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 640 */ GetGameSessionData()641 inline const Aws::String& GetGameSessionData() const{ return m_gameSessionData; } 642 643 /** 644 * <p>A set of custom game session properties, formatted as a single string value. 645 * This data is passed to a game server process in the <a>GameSession</a> object 646 * with a request to start a new game session (see <a 647 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 648 * a Game Session</a>). This information is added to the new <a>GameSession</a> 649 * object that is created for a successful match. This parameter is not used if 650 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 651 */ GameSessionDataHasBeenSet()652 inline bool GameSessionDataHasBeenSet() const { return m_gameSessionDataHasBeenSet; } 653 654 /** 655 * <p>A set of custom game session properties, formatted as a single string value. 656 * This data is passed to a game server process in the <a>GameSession</a> object 657 * with a request to start a new game session (see <a 658 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 659 * a Game Session</a>). This information is added to the new <a>GameSession</a> 660 * object that is created for a successful match. This parameter is not used if 661 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 662 */ SetGameSessionData(const Aws::String & value)663 inline void SetGameSessionData(const Aws::String& value) { m_gameSessionDataHasBeenSet = true; m_gameSessionData = value; } 664 665 /** 666 * <p>A set of custom game session properties, formatted as a single string value. 667 * This data is passed to a game server process in the <a>GameSession</a> object 668 * with a request to start a new game session (see <a 669 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 670 * a Game Session</a>). This information is added to the new <a>GameSession</a> 671 * object that is created for a successful match. This parameter is not used if 672 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 673 */ SetGameSessionData(Aws::String && value)674 inline void SetGameSessionData(Aws::String&& value) { m_gameSessionDataHasBeenSet = true; m_gameSessionData = std::move(value); } 675 676 /** 677 * <p>A set of custom game session properties, formatted as a single string value. 678 * This data is passed to a game server process in the <a>GameSession</a> object 679 * with a request to start a new game session (see <a 680 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 681 * a Game Session</a>). This information is added to the new <a>GameSession</a> 682 * object that is created for a successful match. This parameter is not used if 683 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 684 */ SetGameSessionData(const char * value)685 inline void SetGameSessionData(const char* value) { m_gameSessionDataHasBeenSet = true; m_gameSessionData.assign(value); } 686 687 /** 688 * <p>A set of custom game session properties, formatted as a single string value. 689 * This data is passed to a game server process in the <a>GameSession</a> object 690 * with a request to start a new game session (see <a 691 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 692 * a Game Session</a>). This information is added to the new <a>GameSession</a> 693 * object that is created for a successful match. This parameter is not used if 694 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 695 */ WithGameSessionData(const Aws::String & value)696 inline UpdateMatchmakingConfigurationRequest& WithGameSessionData(const Aws::String& value) { SetGameSessionData(value); return *this;} 697 698 /** 699 * <p>A set of custom game session properties, formatted as a single string value. 700 * This data is passed to a game server process in the <a>GameSession</a> object 701 * with a request to start a new game session (see <a 702 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 703 * a Game Session</a>). This information is added to the new <a>GameSession</a> 704 * object that is created for a successful match. This parameter is not used if 705 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 706 */ WithGameSessionData(Aws::String && value)707 inline UpdateMatchmakingConfigurationRequest& WithGameSessionData(Aws::String&& value) { SetGameSessionData(std::move(value)); return *this;} 708 709 /** 710 * <p>A set of custom game session properties, formatted as a single string value. 711 * This data is passed to a game server process in the <a>GameSession</a> object 712 * with a request to start a new game session (see <a 713 * href="https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-startsession">Start 714 * a Game Session</a>). This information is added to the new <a>GameSession</a> 715 * object that is created for a successful match. This parameter is not used if 716 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 717 */ WithGameSessionData(const char * value)718 inline UpdateMatchmakingConfigurationRequest& WithGameSessionData(const char* value) { SetGameSessionData(value); return *this;} 719 720 721 /** 722 * <p>The method that is used to backfill game sessions created with this 723 * matchmaking configuration. Specify MANUAL when your game manages backfill 724 * requests manually or does not use the match backfill feature. Specify AUTOMATIC 725 * to have GameLift create a <a>StartMatchBackfill</a> request whenever a game 726 * session has one or more open slots. Learn more about manual and automatic 727 * backfill in <a 728 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html">Backfill 729 * Existing Games with FlexMatch</a>. Automatic backfill is not available when 730 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 731 */ GetBackfillMode()732 inline const BackfillMode& GetBackfillMode() const{ return m_backfillMode; } 733 734 /** 735 * <p>The method that is used to backfill game sessions created with this 736 * matchmaking configuration. Specify MANUAL when your game manages backfill 737 * requests manually or does not use the match backfill feature. Specify AUTOMATIC 738 * to have GameLift create a <a>StartMatchBackfill</a> request whenever a game 739 * session has one or more open slots. Learn more about manual and automatic 740 * backfill in <a 741 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html">Backfill 742 * Existing Games with FlexMatch</a>. Automatic backfill is not available when 743 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 744 */ BackfillModeHasBeenSet()745 inline bool BackfillModeHasBeenSet() const { return m_backfillModeHasBeenSet; } 746 747 /** 748 * <p>The method that is used to backfill game sessions created with this 749 * matchmaking configuration. Specify MANUAL when your game manages backfill 750 * requests manually or does not use the match backfill feature. Specify AUTOMATIC 751 * to have GameLift create a <a>StartMatchBackfill</a> request whenever a game 752 * session has one or more open slots. Learn more about manual and automatic 753 * backfill in <a 754 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html">Backfill 755 * Existing Games with FlexMatch</a>. Automatic backfill is not available when 756 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 757 */ SetBackfillMode(const BackfillMode & value)758 inline void SetBackfillMode(const BackfillMode& value) { m_backfillModeHasBeenSet = true; m_backfillMode = value; } 759 760 /** 761 * <p>The method that is used to backfill game sessions created with this 762 * matchmaking configuration. Specify MANUAL when your game manages backfill 763 * requests manually or does not use the match backfill feature. Specify AUTOMATIC 764 * to have GameLift create a <a>StartMatchBackfill</a> request whenever a game 765 * session has one or more open slots. Learn more about manual and automatic 766 * backfill in <a 767 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html">Backfill 768 * Existing Games with FlexMatch</a>. Automatic backfill is not available when 769 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 770 */ SetBackfillMode(BackfillMode && value)771 inline void SetBackfillMode(BackfillMode&& value) { m_backfillModeHasBeenSet = true; m_backfillMode = std::move(value); } 772 773 /** 774 * <p>The method that is used to backfill game sessions created with this 775 * matchmaking configuration. Specify MANUAL when your game manages backfill 776 * requests manually or does not use the match backfill feature. Specify AUTOMATIC 777 * to have GameLift create a <a>StartMatchBackfill</a> request whenever a game 778 * session has one or more open slots. Learn more about manual and automatic 779 * backfill in <a 780 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html">Backfill 781 * Existing Games with FlexMatch</a>. Automatic backfill is not available when 782 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 783 */ WithBackfillMode(const BackfillMode & value)784 inline UpdateMatchmakingConfigurationRequest& WithBackfillMode(const BackfillMode& value) { SetBackfillMode(value); return *this;} 785 786 /** 787 * <p>The method that is used to backfill game sessions created with this 788 * matchmaking configuration. Specify MANUAL when your game manages backfill 789 * requests manually or does not use the match backfill feature. Specify AUTOMATIC 790 * to have GameLift create a <a>StartMatchBackfill</a> request whenever a game 791 * session has one or more open slots. Learn more about manual and automatic 792 * backfill in <a 793 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-backfill.html">Backfill 794 * Existing Games with FlexMatch</a>. Automatic backfill is not available when 795 * <code>FlexMatchMode</code> is set to <code>STANDALONE</code>.</p> 796 */ WithBackfillMode(BackfillMode && value)797 inline UpdateMatchmakingConfigurationRequest& WithBackfillMode(BackfillMode&& value) { SetBackfillMode(std::move(value)); return *this;} 798 799 800 /** 801 * <p>Indicates whether this matchmaking configuration is being used with GameLift 802 * hosting or as a standalone matchmaking solution. </p> <ul> <li> <p> 803 * <b>STANDALONE</b> - FlexMatch forms matches and returns match information, 804 * including players and team assignments, in a <a 805 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-events.html#match-events-matchmakingsucceeded"> 806 * MatchmakingSucceeded</a> event.</p> </li> <li> <p> <b>WITH_QUEUE</b> - FlexMatch 807 * forms matches and uses the specified GameLift queue to start a game session for 808 * the match. </p> </li> </ul> 809 */ GetFlexMatchMode()810 inline const FlexMatchMode& GetFlexMatchMode() const{ return m_flexMatchMode; } 811 812 /** 813 * <p>Indicates whether this matchmaking configuration is being used with GameLift 814 * hosting or as a standalone matchmaking solution. </p> <ul> <li> <p> 815 * <b>STANDALONE</b> - FlexMatch forms matches and returns match information, 816 * including players and team assignments, in a <a 817 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-events.html#match-events-matchmakingsucceeded"> 818 * MatchmakingSucceeded</a> event.</p> </li> <li> <p> <b>WITH_QUEUE</b> - FlexMatch 819 * forms matches and uses the specified GameLift queue to start a game session for 820 * the match. </p> </li> </ul> 821 */ FlexMatchModeHasBeenSet()822 inline bool FlexMatchModeHasBeenSet() const { return m_flexMatchModeHasBeenSet; } 823 824 /** 825 * <p>Indicates whether this matchmaking configuration is being used with GameLift 826 * hosting or as a standalone matchmaking solution. </p> <ul> <li> <p> 827 * <b>STANDALONE</b> - FlexMatch forms matches and returns match information, 828 * including players and team assignments, in a <a 829 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-events.html#match-events-matchmakingsucceeded"> 830 * MatchmakingSucceeded</a> event.</p> </li> <li> <p> <b>WITH_QUEUE</b> - FlexMatch 831 * forms matches and uses the specified GameLift queue to start a game session for 832 * the match. </p> </li> </ul> 833 */ SetFlexMatchMode(const FlexMatchMode & value)834 inline void SetFlexMatchMode(const FlexMatchMode& value) { m_flexMatchModeHasBeenSet = true; m_flexMatchMode = value; } 835 836 /** 837 * <p>Indicates whether this matchmaking configuration is being used with GameLift 838 * hosting or as a standalone matchmaking solution. </p> <ul> <li> <p> 839 * <b>STANDALONE</b> - FlexMatch forms matches and returns match information, 840 * including players and team assignments, in a <a 841 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-events.html#match-events-matchmakingsucceeded"> 842 * MatchmakingSucceeded</a> event.</p> </li> <li> <p> <b>WITH_QUEUE</b> - FlexMatch 843 * forms matches and uses the specified GameLift queue to start a game session for 844 * the match. </p> </li> </ul> 845 */ SetFlexMatchMode(FlexMatchMode && value)846 inline void SetFlexMatchMode(FlexMatchMode&& value) { m_flexMatchModeHasBeenSet = true; m_flexMatchMode = std::move(value); } 847 848 /** 849 * <p>Indicates whether this matchmaking configuration is being used with GameLift 850 * hosting or as a standalone matchmaking solution. </p> <ul> <li> <p> 851 * <b>STANDALONE</b> - FlexMatch forms matches and returns match information, 852 * including players and team assignments, in a <a 853 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-events.html#match-events-matchmakingsucceeded"> 854 * MatchmakingSucceeded</a> event.</p> </li> <li> <p> <b>WITH_QUEUE</b> - FlexMatch 855 * forms matches and uses the specified GameLift queue to start a game session for 856 * the match. </p> </li> </ul> 857 */ WithFlexMatchMode(const FlexMatchMode & value)858 inline UpdateMatchmakingConfigurationRequest& WithFlexMatchMode(const FlexMatchMode& value) { SetFlexMatchMode(value); return *this;} 859 860 /** 861 * <p>Indicates whether this matchmaking configuration is being used with GameLift 862 * hosting or as a standalone matchmaking solution. </p> <ul> <li> <p> 863 * <b>STANDALONE</b> - FlexMatch forms matches and returns match information, 864 * including players and team assignments, in a <a 865 * href="https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-events.html#match-events-matchmakingsucceeded"> 866 * MatchmakingSucceeded</a> event.</p> </li> <li> <p> <b>WITH_QUEUE</b> - FlexMatch 867 * forms matches and uses the specified GameLift queue to start a game session for 868 * the match. </p> </li> </ul> 869 */ WithFlexMatchMode(FlexMatchMode && value)870 inline UpdateMatchmakingConfigurationRequest& WithFlexMatchMode(FlexMatchMode&& value) { SetFlexMatchMode(std::move(value)); return *this;} 871 872 private: 873 874 Aws::String m_name; 875 bool m_nameHasBeenSet; 876 877 Aws::String m_description; 878 bool m_descriptionHasBeenSet; 879 880 Aws::Vector<Aws::String> m_gameSessionQueueArns; 881 bool m_gameSessionQueueArnsHasBeenSet; 882 883 int m_requestTimeoutSeconds; 884 bool m_requestTimeoutSecondsHasBeenSet; 885 886 int m_acceptanceTimeoutSeconds; 887 bool m_acceptanceTimeoutSecondsHasBeenSet; 888 889 bool m_acceptanceRequired; 890 bool m_acceptanceRequiredHasBeenSet; 891 892 Aws::String m_ruleSetName; 893 bool m_ruleSetNameHasBeenSet; 894 895 Aws::String m_notificationTarget; 896 bool m_notificationTargetHasBeenSet; 897 898 int m_additionalPlayerCount; 899 bool m_additionalPlayerCountHasBeenSet; 900 901 Aws::String m_customEventData; 902 bool m_customEventDataHasBeenSet; 903 904 Aws::Vector<GameProperty> m_gameProperties; 905 bool m_gamePropertiesHasBeenSet; 906 907 Aws::String m_gameSessionData; 908 bool m_gameSessionDataHasBeenSet; 909 910 BackfillMode m_backfillMode; 911 bool m_backfillModeHasBeenSet; 912 913 FlexMatchMode m_flexMatchMode; 914 bool m_flexMatchModeHasBeenSet; 915 }; 916 917 } // namespace Model 918 } // namespace GameLift 919 } // namespace Aws 920