java.lang.Object
software.amazon.awssdk.services.gamelift.model.GameServer
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<GameServer.Builder,GameServer>

@Generated("software.amazon.awssdk:codegen") public final class GameServer extends Object implements SdkPojo, Serializable, ToCopyableBuilder<GameServer.Builder,GameServer>

This data type is used with the Amazon GameLift FleetIQ and game server groups.

Properties describing a game server that is running on an instance in a game server group.

A game server is created by a successful call to RegisterGameServer and deleted by calling DeregisterGameServer. A game server is claimed to host a game session by calling ClaimGameServer.

See Also:
  • Method Details

    • gameServerGroupName

      public final String gameServerGroupName()

      A unique identifier for the game server group where the game server is running.

      Returns:
      A unique identifier for the game server group where the game server is running.
    • gameServerGroupArn

      public final String gameServerGroupArn()

      The ARN identifier for the game server group where the game server is located.

      Returns:
      The ARN identifier for the game server group where the game server is located.
    • gameServerId

      public final String gameServerId()

      A custom string that uniquely identifies the game server. Game server IDs are developer-defined and are unique across all game server groups in an Amazon Web Services account.

      Returns:
      A custom string that uniquely identifies the game server. Game server IDs are developer-defined and are unique across all game server groups in an Amazon Web Services account.
    • instanceId

      public final String instanceId()

      The unique identifier for the instance where the game server is running. This ID is available in the instance metadata. EC2 instance IDs use a 17-character format, for example: i-1234567890abcdef0.

      Returns:
      The unique identifier for the instance where the game server is running. This ID is available in the instance metadata. EC2 instance IDs use a 17-character format, for example: i-1234567890abcdef0.
    • connectionInfo

      public final String connectionInfo()

      The port and IP address that must be used to establish a client connection to the game server.

      Returns:
      The port and IP address that must be used to establish a client connection to the game server.
    • gameServerData

      public final String gameServerData()

      A set of custom game server properties, formatted as a single string value. This data is passed to a game client or service when it requests information on game servers.

      Returns:
      A set of custom game server properties, formatted as a single string value. This data is passed to a game client or service when it requests information on game servers.
    • claimStatus

      public final GameServerClaimStatus claimStatus()

      Indicates when an available game server has been reserved for gameplay but has not yet started hosting a game. Once it is claimed, the game server remains in CLAIMED status for a maximum of one minute. During this time, game clients connect to the game server to start the game and trigger the game server to update its utilization status. After one minute, the game server claim status reverts to null.

      If the service returns an enum value that is not available in the current SDK version, claimStatus will return GameServerClaimStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from claimStatusAsString().

      Returns:
      Indicates when an available game server has been reserved for gameplay but has not yet started hosting a game. Once it is claimed, the game server remains in CLAIMED status for a maximum of one minute. During this time, game clients connect to the game server to start the game and trigger the game server to update its utilization status. After one minute, the game server claim status reverts to null.
      See Also:
    • claimStatusAsString

      public final String claimStatusAsString()

      Indicates when an available game server has been reserved for gameplay but has not yet started hosting a game. Once it is claimed, the game server remains in CLAIMED status for a maximum of one minute. During this time, game clients connect to the game server to start the game and trigger the game server to update its utilization status. After one minute, the game server claim status reverts to null.

      If the service returns an enum value that is not available in the current SDK version, claimStatus will return GameServerClaimStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from claimStatusAsString().

      Returns:
      Indicates when an available game server has been reserved for gameplay but has not yet started hosting a game. Once it is claimed, the game server remains in CLAIMED status for a maximum of one minute. During this time, game clients connect to the game server to start the game and trigger the game server to update its utilization status. After one minute, the game server claim status reverts to null.
      See Also:
    • utilizationStatus

      public final GameServerUtilizationStatus utilizationStatus()

      Indicates whether the game server is currently available for new games or is busy. Possible statuses include:

      • AVAILABLE - The game server is available to be claimed. A game server that has been claimed remains in this status until it reports game hosting activity.

      • UTILIZED - The game server is currently hosting a game session with players.

      If the service returns an enum value that is not available in the current SDK version, utilizationStatus will return GameServerUtilizationStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from utilizationStatusAsString().

      Returns:
      Indicates whether the game server is currently available for new games or is busy. Possible statuses include:

      • AVAILABLE - The game server is available to be claimed. A game server that has been claimed remains in this status until it reports game hosting activity.

      • UTILIZED - The game server is currently hosting a game session with players.

      See Also:
    • utilizationStatusAsString

      public final String utilizationStatusAsString()

      Indicates whether the game server is currently available for new games or is busy. Possible statuses include:

      • AVAILABLE - The game server is available to be claimed. A game server that has been claimed remains in this status until it reports game hosting activity.

      • UTILIZED - The game server is currently hosting a game session with players.

      If the service returns an enum value that is not available in the current SDK version, utilizationStatus will return GameServerUtilizationStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from utilizationStatusAsString().

      Returns:
      Indicates whether the game server is currently available for new games or is busy. Possible statuses include:

      • AVAILABLE - The game server is available to be claimed. A game server that has been claimed remains in this status until it reports game hosting activity.

      • UTILIZED - The game server is currently hosting a game session with players.

      See Also:
    • registrationTime

      public final Instant registrationTime()

      Timestamp that indicates when the game server registered. The format is a number expressed in Unix time as milliseconds (for example "1469498468.057").

      Returns:
      Timestamp that indicates when the game server registered. The format is a number expressed in Unix time as milliseconds (for example "1469498468.057").
    • lastClaimTime

      public final Instant lastClaimTime()

      Timestamp that indicates the last time the game server was claimed. The format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). This value is used to calculate when a claimed game server's status should revert to null.

      Returns:
      Timestamp that indicates the last time the game server was claimed. The format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). This value is used to calculate when a claimed game server's status should revert to null.
    • lastHealthCheckTime

      public final Instant lastHealthCheckTime()

      Timestamp that indicates the last time the game server was updated with health status. The format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). After game server registration, this property is only changed when a game server update specifies a health check value.

      Returns:
      Timestamp that indicates the last time the game server was updated with health status. The format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). After game server registration, this property is only changed when a game server update specifies a health check value.
    • toBuilder

      public GameServer.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<GameServer.Builder,GameServer>
      Returns:
      a builder for type T
    • builder

      public static GameServer.Builder builder()
    • serializableBuilderClass

      public static Class<? extends GameServer.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an 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.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • 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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.