Class GameSessionPlacement
- java.lang.Object
-
- software.amazon.awssdk.services.gamelift.model.GameSessionPlacement
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<GameSessionPlacement.Builder,GameSessionPlacement>
@Generated("software.amazon.awssdk:codegen") public final class GameSessionPlacement extends Object implements SdkPojo, Serializable, ToCopyableBuilder<GameSessionPlacement.Builder,GameSessionPlacement>
Represents a potential game session placement, including the full details of the original placement request and the current status.
If the game session placement status is
PENDING, the properties for game session ID/ARN, region, IP address/DNS, and port aren't final. A game session is not active and ready to accept players until placement status reachesFULFILLED. When the placement is inPENDINGstatus, Amazon GameLift may attempt to place a game session multiple times before succeeding. With each attempt it creates a GameSession object and updates this placement object with the new game session properties..- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceGameSessionPlacement.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static GameSessionPlacement.Builderbuilder()StringdnsName()The DNS identifier assigned to the instance that is running the game session.InstantendTime()Time stamp indicating when this request was completed, canceled, or timed out.booleanequals(Object obj)booleanequalsBySdkFields(Object obj)List<GameProperty>gameProperties()A set of key-value pairs that can store custom data in a game session.StringgameSessionArn()Identifier for the game session created by this placement request.StringgameSessionData()A set of custom game session properties, formatted as a single string value.StringgameSessionId()A unique identifier for the game session.StringgameSessionName()A descriptive label that is associated with a game session.StringgameSessionQueueName()A descriptive label that is associated with game session queue.StringgameSessionRegion()Name of the Region where the game session created by this placement request is running.<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)booleanhasGameProperties()For responses, this returns true if the service returned a value for the GameProperties property.inthashCode()booleanhasPlacedPlayerSessions()For responses, this returns true if the service returned a value for the PlacedPlayerSessions property.booleanhasPlayerLatencies()For responses, this returns true if the service returned a value for the PlayerLatencies property.StringipAddress()The IP address of the game session.StringmatchmakerData()Information on the matchmaking process for this game.IntegermaximumPlayerSessionCount()The maximum number of players that can be connected simultaneously to the game session.List<PlacedPlayerSession>placedPlayerSessions()A collection of information on player sessions created in response to the game session placement request.StringplacementId()A unique identifier for a game session placement.List<PlayerLatency>playerLatencies()A set of values, expressed in milliseconds, that indicates the amount of latency that a player experiences when connected to Amazon Web Services Regions.Integerport()The port number for the game session.List<SdkField<?>>sdkFields()static Class<? extends GameSessionPlacement.Builder>serializableBuilderClass()InstantstartTime()Time stamp indicating when this request was placed in the queue.GameSessionPlacementStatestatus()Current status of the game session placement request.StringstatusAsString()Current status of the game session placement request.GameSessionPlacement.BuildertoBuilder()StringtoString()Returns a string representation of this object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
placementId
public final String placementId()
A unique identifier for a game session placement.
- Returns:
- A unique identifier for a game session placement.
-
gameSessionQueueName
public final String gameSessionQueueName()
A descriptive label that is associated with game session queue. Queue names must be unique within each Region.
- Returns:
- A descriptive label that is associated with game session queue. Queue names must be unique within each Region.
-
status
public final GameSessionPlacementState status()
Current status of the game session placement request.
-
PENDING -- The placement request is in the queue waiting to be processed. Game session properties are not yet final.
-
FULFILLED -- A new game session has been successfully placed. Game session properties are now final.
-
CANCELLED -- The placement request was canceled.
-
TIMED_OUT -- A new game session was not successfully created before the time limit expired. You can resubmit the placement request as needed.
-
FAILED -- Amazon GameLift is not able to complete the process of placing the game session. Common reasons are the game session terminated before the placement process was completed, or an unexpected internal error.
If the service returns an enum value that is not available in the current SDK version,
statuswill returnGameSessionPlacementState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromstatusAsString().- Returns:
- Current status of the game session placement request.
-
PENDING -- The placement request is in the queue waiting to be processed. Game session properties are not yet final.
-
FULFILLED -- A new game session has been successfully placed. Game session properties are now final.
-
CANCELLED -- The placement request was canceled.
-
TIMED_OUT -- A new game session was not successfully created before the time limit expired. You can resubmit the placement request as needed.
-
FAILED -- Amazon GameLift is not able to complete the process of placing the game session. Common reasons are the game session terminated before the placement process was completed, or an unexpected internal error.
-
- See Also:
GameSessionPlacementState
-
-
statusAsString
public final String statusAsString()
Current status of the game session placement request.
-
PENDING -- The placement request is in the queue waiting to be processed. Game session properties are not yet final.
-
FULFILLED -- A new game session has been successfully placed. Game session properties are now final.
-
CANCELLED -- The placement request was canceled.
-
TIMED_OUT -- A new game session was not successfully created before the time limit expired. You can resubmit the placement request as needed.
-
FAILED -- Amazon GameLift is not able to complete the process of placing the game session. Common reasons are the game session terminated before the placement process was completed, or an unexpected internal error.
If the service returns an enum value that is not available in the current SDK version,
statuswill returnGameSessionPlacementState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromstatusAsString().- Returns:
- Current status of the game session placement request.
-
PENDING -- The placement request is in the queue waiting to be processed. Game session properties are not yet final.
-
FULFILLED -- A new game session has been successfully placed. Game session properties are now final.
-
CANCELLED -- The placement request was canceled.
-
TIMED_OUT -- A new game session was not successfully created before the time limit expired. You can resubmit the placement request as needed.
-
FAILED -- Amazon GameLift is not able to complete the process of placing the game session. Common reasons are the game session terminated before the placement process was completed, or an unexpected internal error.
-
- See Also:
GameSessionPlacementState
-
-
hasGameProperties
public final boolean hasGameProperties()
For responses, this returns true if the service returned a value for the GameProperties property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
gameProperties
public final List<GameProperty> gameProperties()
A set of key-value pairs that can store custom data in a game session. For example:
{"Key": "difficulty", "Value": "novice"}.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasGameProperties()method.- Returns:
- A set of key-value pairs that can store custom data in a game session. For example:
{"Key": "difficulty", "Value": "novice"}.
-
maximumPlayerSessionCount
public final Integer maximumPlayerSessionCount()
The maximum number of players that can be connected simultaneously to the game session.
- Returns:
- The maximum number of players that can be connected simultaneously to the game session.
-
gameSessionName
public final String gameSessionName()
A descriptive label that is associated with a game session. Session names do not need to be unique.
- Returns:
- A descriptive label that is associated with a game session. Session names do not need to be unique.
-
gameSessionId
public final String gameSessionId()
A unique identifier for the game session. This value isn't final until placement status is
FULFILLED.- Returns:
- A unique identifier for the game session. This value isn't final until placement status is
FULFILLED.
-
gameSessionArn
public final String gameSessionArn()
Identifier for the game session created by this placement request. This identifier is unique across all Regions. This value isn't final until placement status is
FULFILLED.- Returns:
- Identifier for the game session created by this placement request. This identifier is unique across all
Regions. This value isn't final until placement status is
FULFILLED.
-
gameSessionRegion
public final String gameSessionRegion()
Name of the Region where the game session created by this placement request is running. This value isn't final until placement status is
FULFILLED.- Returns:
- Name of the Region where the game session created by this placement request is running. This value isn't
final until placement status is
FULFILLED.
-
hasPlayerLatencies
public final boolean hasPlayerLatencies()
For responses, this returns true if the service returned a value for the PlayerLatencies property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
playerLatencies
public final List<PlayerLatency> playerLatencies()
A set of values, expressed in milliseconds, that indicates the amount of latency that a player experiences when connected to Amazon Web Services Regions.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasPlayerLatencies()method.- Returns:
- A set of values, expressed in milliseconds, that indicates the amount of latency that a player experiences when connected to Amazon Web Services Regions.
-
startTime
public final Instant startTime()
Time stamp indicating when this request was placed in the queue. Format is a number expressed in Unix time as milliseconds (for example
"1469498468.057").- Returns:
- Time stamp indicating when this request was placed in the queue. Format is a number expressed in Unix
time as milliseconds (for example
"1469498468.057").
-
endTime
public final Instant endTime()
Time stamp indicating when this request was completed, canceled, or timed out.
- Returns:
- Time stamp indicating when this request was completed, canceled, or timed out.
-
ipAddress
public final String ipAddress()
The IP address of the game session. To connect to a Amazon GameLift game server, an app needs both the IP address and port number. This value isn't final until placement status is
FULFILLED.- Returns:
- The IP address of the game session. To connect to a Amazon GameLift game server, an app needs both the IP
address and port number. This value isn't final until placement status is
FULFILLED.
-
dnsName
public final String dnsName()
The DNS identifier assigned to the instance that is running the game session. Values have the following format:
-
TLS-enabled fleets:
<unique identifier>.<region identifier>.amazongamelift.com. -
Non-TLS-enabled fleets:
ec2-<unique identifier>.compute.amazonaws.com. (See Amazon EC2 Instance IP Addressing.)
When connecting to a game session that is running on a TLS-enabled fleet, you must use the DNS name, not the IP address.
- Returns:
- The DNS identifier assigned to the instance that is running the game session. Values have the following
format:
-
TLS-enabled fleets:
<unique identifier>.<region identifier>.amazongamelift.com. -
Non-TLS-enabled fleets:
ec2-<unique identifier>.compute.amazonaws.com. (See Amazon EC2 Instance IP Addressing.)
When connecting to a game session that is running on a TLS-enabled fleet, you must use the DNS name, not the IP address.
-
-
-
port
public final Integer port()
The port number for the game session. To connect to a Amazon GameLift game server, an app needs both the IP address and port number. This value isn't final until placement status is
FULFILLED.- Returns:
- The port number for the game session. To connect to a Amazon GameLift game server, an app needs both the
IP address and port number. This value isn't final until placement status is
FULFILLED.
-
hasPlacedPlayerSessions
public final boolean hasPlacedPlayerSessions()
For responses, this returns true if the service returned a value for the PlacedPlayerSessions property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
placedPlayerSessions
public final List<PlacedPlayerSession> placedPlayerSessions()
A collection of information on player sessions created in response to the game session placement request. These player sessions are created only after a new game session is successfully placed (placement status is
FULFILLED). This information includes the player ID, provided in the placement request, and a corresponding player session ID.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasPlacedPlayerSessions()method.- Returns:
- A collection of information on player sessions created in response to the game session placement request.
These player sessions are created only after a new game session is successfully placed (placement status
is
FULFILLED). This information includes the player ID, provided in the placement request, and a corresponding player session ID.
-
gameSessionData
public final String gameSessionData()
A set of custom game session properties, formatted as a single string value. This data is passed to a game server process in the
GameSessionobject with a request to start a new game session (see Start a Game Session).- Returns:
- A set of custom game session properties, formatted as a single string value. This data is passed to a
game server process in the
GameSessionobject with a request to start a new game session (see Start a Game Session).
-
matchmakerData
public final String matchmakerData()
Information on the matchmaking process for this game. Data is in JSON syntax, formatted as a string. It identifies the matchmaking configuration used to create the match, and contains data on all players assigned to the match, including player attributes and team assignments. For more details on matchmaker data, see Match Data.
- Returns:
- Information on the matchmaking process for this game. Data is in JSON syntax, formatted as a string. It identifies the matchmaking configuration used to create the match, and contains data on all players assigned to the match, including player attributes and team assignments. For more details on matchmaker data, see Match Data.
-
toBuilder
public GameSessionPlacement.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<GameSessionPlacement.Builder,GameSessionPlacement>
-
builder
public static GameSessionPlacement.Builder builder()
-
serializableBuilderClass
public static Class<? extends GameSessionPlacement.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
-