@Generated(value="software.amazon.awssdk:codegen") public final class PriorityConfiguration extends Object implements SdkPojo, Serializable, ToCopyableBuilder<PriorityConfiguration.Builder,PriorityConfiguration>
Custom prioritization settings for use by a game session queue when placing new game sessions with available game servers. When defined, this configuration replaces the default FleetIQ prioritization process, which is as follows:
If player latency data is included in a game session request, destinations and locations are prioritized first based on lowest average latency (1), then on lowest hosting cost (2), then on destination list order (3), and finally on location (alphabetical) (4). This approach ensures that the queue's top priority is to place game sessions where average player latency is lowest, and--if latency is the same--where the hosting cost is less, etc.
If player latency data is not included, destinations and locations are prioritized first on destination list order (1), and then on location (alphabetical) (2). This approach ensures that the queue's top priority is to place game sessions on the first destination fleet listed. If that fleet has multiple locations, the game session is placed on the first location (when listed alphabetically).
Changing the priority order will affect how game sessions are placed.
Priority configurations are part of a GameSessionQueue.
| Modifier and Type | Class and Description |
|---|---|
static interface |
PriorityConfiguration.Builder |
| Modifier and Type | Method and Description |
|---|---|
static PriorityConfiguration.Builder |
builder() |
boolean |
equals(Object obj) |
boolean |
equalsBySdkFields(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
int |
hashCode() |
boolean |
hasLocationOrder()
For responses, this returns true if the service returned a value for the LocationOrder property.
|
boolean |
hasPriorityOrder()
For responses, this returns true if the service returned a value for the PriorityOrder property.
|
List<String> |
locationOrder()
The prioritization order to use for fleet locations, when the
PriorityOrder property includes
LOCATION. |
List<PriorityType> |
priorityOrder()
The recommended sequence to use when prioritizing where to place new game sessions.
|
List<String> |
priorityOrderAsStrings()
The recommended sequence to use when prioritizing where to place new game sessions.
|
List<SdkField<?>> |
sdkFields() |
static Class<? extends PriorityConfiguration.Builder> |
serializableBuilderClass() |
PriorityConfiguration.Builder |
toBuilder() |
String |
toString()
Returns a string representation of this object.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitcopypublic final List<PriorityType> priorityOrder()
The recommended sequence to use when prioritizing where to place new game sessions. Each type can only be listed once.
LATENCY -- FleetIQ prioritizes locations where the average player latency (provided in each game
session request) is lowest.
COST -- FleetIQ prioritizes destinations with the lowest current hosting costs. Cost is evaluated
based on the location, instance type, and fleet type (Spot or On-Demand) for each destination in the queue.
DESTINATION -- FleetIQ prioritizes based on the order that destinations are listed in the queue
configuration.
LOCATION -- FleetIQ prioritizes based on the provided order of locations, as defined in
LocationOrder.
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 hasPriorityOrder() method.
LATENCY -- FleetIQ prioritizes locations where the average player latency (provided in each
game session request) is lowest.
COST -- FleetIQ prioritizes destinations with the lowest current hosting costs. Cost is
evaluated based on the location, instance type, and fleet type (Spot or On-Demand) for each destination
in the queue.
DESTINATION -- FleetIQ prioritizes based on the order that destinations are listed in the
queue configuration.
LOCATION -- FleetIQ prioritizes based on the provided order of locations, as defined in
LocationOrder.
public final boolean hasPriorityOrder()
isEmpty() 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.public final List<String> priorityOrderAsStrings()
The recommended sequence to use when prioritizing where to place new game sessions. Each type can only be listed once.
LATENCY -- FleetIQ prioritizes locations where the average player latency (provided in each game
session request) is lowest.
COST -- FleetIQ prioritizes destinations with the lowest current hosting costs. Cost is evaluated
based on the location, instance type, and fleet type (Spot or On-Demand) for each destination in the queue.
DESTINATION -- FleetIQ prioritizes based on the order that destinations are listed in the queue
configuration.
LOCATION -- FleetIQ prioritizes based on the provided order of locations, as defined in
LocationOrder.
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 hasPriorityOrder() method.
LATENCY -- FleetIQ prioritizes locations where the average player latency (provided in each
game session request) is lowest.
COST -- FleetIQ prioritizes destinations with the lowest current hosting costs. Cost is
evaluated based on the location, instance type, and fleet type (Spot or On-Demand) for each destination
in the queue.
DESTINATION -- FleetIQ prioritizes based on the order that destinations are listed in the
queue configuration.
LOCATION -- FleetIQ prioritizes based on the provided order of locations, as defined in
LocationOrder.
public final boolean hasLocationOrder()
isEmpty() 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.public final List<String> locationOrder()
The prioritization order to use for fleet locations, when the PriorityOrder property includes
LOCATION. Locations are identified by AWS Region codes such as us-west-2. Each location
can only be listed once.
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 hasLocationOrder() method.
PriorityOrder property
includes LOCATION. Locations are identified by AWS Region codes such as
us-west-2. Each location can only be listed once.public PriorityConfiguration.Builder toBuilder()
toBuilder in interface ToCopyableBuilder<PriorityConfiguration.Builder,PriorityConfiguration>public static PriorityConfiguration.Builder builder()
public static Class<? extends PriorityConfiguration.Builder> serializableBuilderClass()
public final boolean equalsBySdkFields(Object obj)
equalsBySdkFields in interface SdkPojopublic final String toString()
Copyright © 2021. All rights reserved.