@Generated(value="software.amazon.awssdk:codegen") public final class PlayerSession extends Object implements SdkPojo, Serializable, ToCopyableBuilder<PlayerSession.Builder,PlayerSession>
Properties describing a player session. Player session objects are created either by creating a player session for a
specific game session, or as part of a game session placement. A player session represents either a player
reservation for a game session (status RESERVED
) or actual player activity in a game session (status
ACTIVE
). A player session object (including player data) is automatically passed to a game session when
the player connects to the game session and is validated.
When a player disconnects, the player session status changes to COMPLETED
. Once the session ends, the
player session object is retained for 30 days and then removed.
Modifier and Type | Class and Description |
---|---|
static interface |
PlayerSession.Builder |
Modifier and Type | Method and Description |
---|---|
static PlayerSession.Builder |
builder() |
Instant |
creationTime()
Time stamp indicating when this data object was created.
|
String |
dnsName()
DNS identifier assigned to the instance that is running the game session.
|
boolean |
equals(Object obj) |
boolean |
equalsBySdkFields(Object obj)
Indicates whether some other object is "equal to" this one by SDK fields.
|
String |
fleetArn()
The Amazon Resource Name (ARN) associated with the
GameLift fleet that the player's game session is running on.
|
String |
fleetId()
A unique identifier for a fleet that the player's game session is running on.
|
String |
gameSessionId()
A unique identifier for the game session that the player session is connected to.
|
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
int |
hashCode() |
String |
ipAddress()
IP address of the instance that is running the game session.
|
String |
playerData()
Developer-defined information related to a player.
|
String |
playerId()
A unique identifier for a player that is associated with this player session.
|
String |
playerSessionId()
A unique identifier for a player session.
|
Integer |
port()
Port number for the game session.
|
List<SdkField<?>> |
sdkFields() |
static Class<? extends PlayerSession.Builder> |
serializableBuilderClass() |
PlayerSessionStatus |
status()
Current status of the player session.
|
String |
statusAsString()
Current status of the player session.
|
Instant |
terminationTime()
Time stamp indicating when this data object was terminated.
|
PlayerSession.Builder |
toBuilder()
Take this object and create a builder that contains all of the current property values of this object.
|
String |
toString()
Returns a string representation of this object.
|
copy
public final String playerSessionId()
A unique identifier for a player session.
public final String playerId()
A unique identifier for a player that is associated with this player session.
public final String gameSessionId()
A unique identifier for the game session that the player session is connected to.
public final String fleetId()
A unique identifier for a fleet that the player's game session is running on.
public final String fleetArn()
The Amazon Resource Name (ARN) associated with the GameLift fleet that the player's game session is running on.
public final Instant creationTime()
Time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057").
public final Instant terminationTime()
Time stamp indicating when this data object was terminated. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057").
public final PlayerSessionStatus status()
Current status of the player session.
Possible player session statuses include the following:
RESERVED -- The player session request has been received, but the player has not yet connected to the server process and/or been validated.
ACTIVE -- The player has been validated by the server process and is currently connected.
COMPLETED -- The player connection has been dropped.
TIMEDOUT -- A player session request was received, but the player did not connect and/or was not validated within the timeout limit (60 seconds).
If the service returns an enum value that is not available in the current SDK version, status
will
return PlayerSessionStatus.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from statusAsString()
.
Possible player session statuses include the following:
RESERVED -- The player session request has been received, but the player has not yet connected to the server process and/or been validated.
ACTIVE -- The player has been validated by the server process and is currently connected.
COMPLETED -- The player connection has been dropped.
TIMEDOUT -- A player session request was received, but the player did not connect and/or was not validated within the timeout limit (60 seconds).
PlayerSessionStatus
public final String statusAsString()
Current status of the player session.
Possible player session statuses include the following:
RESERVED -- The player session request has been received, but the player has not yet connected to the server process and/or been validated.
ACTIVE -- The player has been validated by the server process and is currently connected.
COMPLETED -- The player connection has been dropped.
TIMEDOUT -- A player session request was received, but the player did not connect and/or was not validated within the timeout limit (60 seconds).
If the service returns an enum value that is not available in the current SDK version, status
will
return PlayerSessionStatus.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from statusAsString()
.
Possible player session statuses include the following:
RESERVED -- The player session request has been received, but the player has not yet connected to the server process and/or been validated.
ACTIVE -- The player has been validated by the server process and is currently connected.
COMPLETED -- The player connection has been dropped.
TIMEDOUT -- A player session request was received, but the player did not connect and/or was not validated within the timeout limit (60 seconds).
PlayerSessionStatus
public final String ipAddress()
IP address of the instance that is running the game session. When connecting to a Amazon GameLift game server, a client needs to reference an IP address (or DNS name) and port number.
public final String dnsName()
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.
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.
public final Integer port()
Port number for the game session. To connect to a Amazon GameLift server process, an app needs both the IP address and port number.
public final String playerData()
Developer-defined information related to a player. Amazon GameLift does not use this data, so it can be formatted as needed for use in the game.
public PlayerSession.Builder toBuilder()
ToCopyableBuilder
toBuilder
in interface ToCopyableBuilder<PlayerSession.Builder,PlayerSession>
public static PlayerSession.Builder builder()
public static Class<? extends PlayerSession.Builder> serializableBuilderClass()
public final boolean equalsBySdkFields(Object obj)
SdkPojo
SdkPojo
class,
and is generated based on a service model.
If an SdkPojo
class does not have any inherited fields, equalsBySdkFields
and equals
are essentially the same.
equalsBySdkFields
in interface SdkPojo
obj
- the object to be compared withpublic final String toString()
Copyright © 2021 Amazon Web Services, Inc. All Rights Reserved.