pub struct StartMatchBackfillFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to StartMatchBackfill
.
Finds new players to fill open slots in currently running game sessions. The backfill match process is essentially identical to the process of forming new matches. Backfill requests use the same matchmaker that was used to make the original match, and they provide matchmaking data for all players currently in the game session. FlexMatch uses this information to select new players so that backfilled match continues to meet the original match requirements.
When using FlexMatch with Amazon GameLift Servers managed hosting, you can request a backfill match from a client service by calling this operation with a GameSessions
ID. You also have the option of making backfill requests directly from your game server. In response to a request, FlexMatch creates player sessions for the new players, updates the GameSession
resource, and sends updated matchmaking data to the game server. You can request a backfill match at any point after a game session is started. Each game session can have only one active backfill request at a time; a subsequent request automatically replaces the earlier request.
When using FlexMatch as a standalone component, request a backfill match by calling this operation without a game session identifier. As with newly formed matches, matchmaking results are returned in a matchmaking event so that your game can update the game session that is being backfilled.
To request a backfill match, specify a unique ticket ID, the original matchmaking configuration, and matchmaking data for all current players in the game session being backfilled. Optionally, specify the GameSession
ARN. If successful, a match backfill ticket is created and returned with status set to QUEUED. Track the status of backfill tickets using the same method for tracking tickets for new matches.
Only game sessions created by FlexMatch are supported for match backfill.
Learn more
Backfill existing games with FlexMatch
Matchmaking events (reference)
Implementations§
Source§impl StartMatchBackfillFluentBuilder
impl StartMatchBackfillFluentBuilder
Sourcepub fn as_input(&self) -> &StartMatchBackfillInputBuilder
pub fn as_input(&self) -> &StartMatchBackfillInputBuilder
Access the StartMatchBackfill as a reference.
Sourcepub async fn send(
self,
) -> Result<StartMatchBackfillOutput, SdkError<StartMatchBackfillError, HttpResponse>>
pub async fn send( self, ) -> Result<StartMatchBackfillOutput, SdkError<StartMatchBackfillError, HttpResponse>>
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
Sourcepub fn customize(
self,
) -> CustomizableOperation<StartMatchBackfillOutput, StartMatchBackfillError, Self>
pub fn customize( self, ) -> CustomizableOperation<StartMatchBackfillOutput, StartMatchBackfillError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
Sourcepub fn ticket_id(self, input: impl Into<String>) -> Self
pub fn ticket_id(self, input: impl Into<String>) -> Self
A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift Servers will generate one in the form of a UUID. Use this identifier to track the match backfill ticket status and retrieve match results.
Sourcepub fn set_ticket_id(self, input: Option<String>) -> Self
pub fn set_ticket_id(self, input: Option<String>) -> Self
A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift Servers will generate one in the form of a UUID. Use this identifier to track the match backfill ticket status and retrieve match results.
Sourcepub fn get_ticket_id(&self) -> &Option<String>
pub fn get_ticket_id(&self) -> &Option<String>
A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift Servers will generate one in the form of a UUID. Use this identifier to track the match backfill ticket status and retrieve match results.
Sourcepub fn configuration_name(self, input: impl Into<String>) -> Self
pub fn configuration_name(self, input: impl Into<String>) -> Self
Name of the matchmaker to use for this request. You can use either the configuration name or ARN value. The ARN of the matchmaker that was used with the original game session is listed in the GameSession
object, MatchmakerData
property.
Sourcepub fn set_configuration_name(self, input: Option<String>) -> Self
pub fn set_configuration_name(self, input: Option<String>) -> Self
Name of the matchmaker to use for this request. You can use either the configuration name or ARN value. The ARN of the matchmaker that was used with the original game session is listed in the GameSession
object, MatchmakerData
property.
Sourcepub fn get_configuration_name(&self) -> &Option<String>
pub fn get_configuration_name(&self) -> &Option<String>
Name of the matchmaker to use for this request. You can use either the configuration name or ARN value. The ARN of the matchmaker that was used with the original game session is listed in the GameSession
object, MatchmakerData
property.
Sourcepub fn game_session_arn(self, input: impl Into<String>) -> Self
pub fn game_session_arn(self, input: impl Into<String>) -> Self
A unique identifier for the game session. Use the game session ID. When using FlexMatch as a standalone matchmaking solution, this parameter is not needed.
Sourcepub fn set_game_session_arn(self, input: Option<String>) -> Self
pub fn set_game_session_arn(self, input: Option<String>) -> Self
A unique identifier for the game session. Use the game session ID. When using FlexMatch as a standalone matchmaking solution, this parameter is not needed.
Sourcepub fn get_game_session_arn(&self) -> &Option<String>
pub fn get_game_session_arn(&self) -> &Option<String>
A unique identifier for the game session. Use the game session ID. When using FlexMatch as a standalone matchmaking solution, this parameter is not needed.
Sourcepub fn players(self, input: Player) -> Self
pub fn players(self, input: Player) -> Self
Appends an item to Players
.
To override the contents of this collection use set_players
.
Match information on all players that are currently assigned to the game session. This information is used by the matchmaker to find new players and add them to the existing game.
You can include up to 199 Players
in a StartMatchBackfill
request.
-
PlayerID, PlayerAttributes, Team -- This information is maintained in the
GameSession
object,MatchmakerData
property, for all players who are currently assigned to the game session. The matchmaker data is in JSON syntax, formatted as a string. For more details, see Match Data.The backfill request must specify the team membership for every player. Do not specify team if you are not using backfill.
-
LatencyInMs -- If the matchmaker uses player latency, include a latency value, in milliseconds, for the Region that the game session is currently in. Do not include latency values for any other Region.
Sourcepub fn set_players(self, input: Option<Vec<Player>>) -> Self
pub fn set_players(self, input: Option<Vec<Player>>) -> Self
Match information on all players that are currently assigned to the game session. This information is used by the matchmaker to find new players and add them to the existing game.
You can include up to 199 Players
in a StartMatchBackfill
request.
-
PlayerID, PlayerAttributes, Team -- This information is maintained in the
GameSession
object,MatchmakerData
property, for all players who are currently assigned to the game session. The matchmaker data is in JSON syntax, formatted as a string. For more details, see Match Data.The backfill request must specify the team membership for every player. Do not specify team if you are not using backfill.
-
LatencyInMs -- If the matchmaker uses player latency, include a latency value, in milliseconds, for the Region that the game session is currently in. Do not include latency values for any other Region.
Sourcepub fn get_players(&self) -> &Option<Vec<Player>>
pub fn get_players(&self) -> &Option<Vec<Player>>
Match information on all players that are currently assigned to the game session. This information is used by the matchmaker to find new players and add them to the existing game.
You can include up to 199 Players
in a StartMatchBackfill
request.
-
PlayerID, PlayerAttributes, Team -- This information is maintained in the
GameSession
object,MatchmakerData
property, for all players who are currently assigned to the game session. The matchmaker data is in JSON syntax, formatted as a string. For more details, see Match Data.The backfill request must specify the team membership for every player. Do not specify team if you are not using backfill.
-
LatencyInMs -- If the matchmaker uses player latency, include a latency value, in milliseconds, for the Region that the game session is currently in. Do not include latency values for any other Region.
Trait Implementations§
Source§impl Clone for StartMatchBackfillFluentBuilder
impl Clone for StartMatchBackfillFluentBuilder
Source§fn clone(&self) -> StartMatchBackfillFluentBuilder
fn clone(&self) -> StartMatchBackfillFluentBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for StartMatchBackfillFluentBuilder
impl !RefUnwindSafe for StartMatchBackfillFluentBuilder
impl Send for StartMatchBackfillFluentBuilder
impl Sync for StartMatchBackfillFluentBuilder
impl Unpin for StartMatchBackfillFluentBuilder
impl !UnwindSafe for StartMatchBackfillFluentBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);