Class GameSessionQueue.Builder

java.lang.Object
software.amazon.awscdk.services.gamelift.alpha.GameSessionQueue.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<GameSessionQueue>
Enclosing class:
GameSessionQueue

@Stability(Experimental) public static final class GameSessionQueue.Builder extends Object implements software.amazon.jsii.Builder<GameSessionQueue>
(experimental) A fluent builder for GameSessionQueue.
  • Method Details

    • create

      @Stability(Experimental) public static GameSessionQueue.Builder create(software.constructs.Construct scope, String id)
      Parameters:
      scope - This parameter is required.
      id - This parameter is required.
      Returns:
      a new instance of GameSessionQueue.Builder.
    • destinations

      @Stability(Experimental) public GameSessionQueue.Builder destinations(List<? extends IGameSessionQueueDestination> destinations)
      (experimental) A list of fleets and/or fleet alias that can be used to fulfill game session placement requests in the queue.

      Destinations are listed in order of placement preference.

      Parameters:
      destinations - A list of fleets and/or fleet alias that can be used to fulfill game session placement requests in the queue. This parameter is required.
      Returns:
      this
    • gameSessionQueueName

      @Stability(Experimental) public GameSessionQueue.Builder gameSessionQueueName(String gameSessionQueueName)
      (experimental) Name of this gameSessionQueue.

      Parameters:
      gameSessionQueueName - Name of this gameSessionQueue. This parameter is required.
      Returns:
      this
    • allowedLocations

      @Stability(Experimental) public GameSessionQueue.Builder allowedLocations(List<String> allowedLocations)
      (experimental) A list of locations where a queue is allowed to place new game sessions.

      Locations are specified in the form of AWS Region codes, such as us-west-2.

      For queues that have multi-location fleets, you can use a filter configuration allow placement with some, but not all of these locations.

      Default: game sessions can be placed in any queue location

      Parameters:
      allowedLocations - A list of locations where a queue is allowed to place new game sessions. This parameter is required.
      Returns:
      this
    • customEventData

      @Stability(Experimental) public GameSessionQueue.Builder customEventData(String customEventData)
      (experimental) Information to be added to all events that are related to this game session queue.

      Default: no customer event data

      Parameters:
      customEventData - Information to be added to all events that are related to this game session queue. This parameter is required.
      Returns:
      this
    • notificationTarget

      @Stability(Experimental) public GameSessionQueue.Builder notificationTarget(ITopic notificationTarget)
      (experimental) An SNS topic is set up to receive game session placement notifications.

      Default: no notification

      Parameters:
      notificationTarget - An SNS topic is set up to receive game session placement notifications. This parameter is required.
      Returns:
      this
      See Also:
    • playerLatencyPolicies

      @Stability(Experimental) public GameSessionQueue.Builder playerLatencyPolicies(List<? extends PlayerLatencyPolicy> playerLatencyPolicies)
      (experimental) A set of policies that act as a sliding cap on player latency.

      FleetIQ works to deliver low latency for most players in a game session. These policies ensure that no individual player can be placed into a game with unreasonably high latency. Use multiple policies to gradually relax latency requirements a step at a time. Multiple policies are applied based on their maximum allowed latency, starting with the lowest value.

      Default: no player latency policy

      Parameters:
      playerLatencyPolicies - A set of policies that act as a sliding cap on player latency. This parameter is required.
      Returns:
      this
    • priorityConfiguration

      @Stability(Experimental) public GameSessionQueue.Builder priorityConfiguration(PriorityConfiguration priorityConfiguration)
      (experimental) Custom settings to use when prioritizing destinations and locations for game session placements.

      This configuration replaces the FleetIQ default prioritization process.

      Priority types that are not explicitly named will be automatically applied at the end of the prioritization process.

      Default: no priority configuration

      Parameters:
      priorityConfiguration - Custom settings to use when prioritizing destinations and locations for game session placements. This parameter is required.
      Returns:
      this
    • timeout

      @Stability(Experimental) public GameSessionQueue.Builder timeout(Duration timeout)
      (experimental) The maximum time, that a new game session placement request remains in the queue.

      When a request exceeds this time, the game session placement changes to a TIMED_OUT status.

      Default: 50 seconds

      Parameters:
      timeout - The maximum time, that a new game session placement request remains in the queue. This parameter is required.
      Returns:
      this
    • build

      @Stability(Experimental) public GameSessionQueue build()
      Specified by:
      build in interface software.amazon.jsii.Builder<GameSessionQueue>
      Returns:
      a newly built instance of GameSessionQueue.