com.amazonaws.services.gamelift.model.StartMatchmakingRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-gamelift Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.gamelift.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class StartMatchmakingRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {
/**
*
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will generate
* one in the form of a UUID. Use this identifier to track the matchmaking ticket status and retrieve match results.
*
*/
private String ticketId;
/**
*
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in the same
* Region as this request. You can use either the configuration name or ARN value.
*
*/
private String configurationName;
/**
*
* Information on each player to be matched. This information must include a player ID, and may contain player
* attributes and latency data to be used in the matchmaking process. After a successful match, Player
* objects contain the name of the team the player is assigned to.
*
*
* You can include up to 10 Players
in a StartMatchmaking
request.
*
*/
private java.util.List players;
/**
*
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will generate
* one in the form of a UUID. Use this identifier to track the matchmaking ticket status and retrieve match results.
*
*
* @param ticketId
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will
* generate one in the form of a UUID. Use this identifier to track the matchmaking ticket status and
* retrieve match results.
*/
public void setTicketId(String ticketId) {
this.ticketId = ticketId;
}
/**
*
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will generate
* one in the form of a UUID. Use this identifier to track the matchmaking ticket status and retrieve match results.
*
*
* @return A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will
* generate one in the form of a UUID. Use this identifier to track the matchmaking ticket status and
* retrieve match results.
*/
public String getTicketId() {
return this.ticketId;
}
/**
*
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will generate
* one in the form of a UUID. Use this identifier to track the matchmaking ticket status and retrieve match results.
*
*
* @param ticketId
* A unique identifier for a matchmaking ticket. If no ticket ID is specified here, Amazon GameLift will
* generate one in the form of a UUID. Use this identifier to track the matchmaking ticket status and
* retrieve match results.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public StartMatchmakingRequest withTicketId(String ticketId) {
setTicketId(ticketId);
return this;
}
/**
*
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in the same
* Region as this request. You can use either the configuration name or ARN value.
*
*
* @param configurationName
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in
* the same Region as this request. You can use either the configuration name or ARN value.
*/
public void setConfigurationName(String configurationName) {
this.configurationName = configurationName;
}
/**
*
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in the same
* Region as this request. You can use either the configuration name or ARN value.
*
*
* @return Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in
* the same Region as this request. You can use either the configuration name or ARN value.
*/
public String getConfigurationName() {
return this.configurationName;
}
/**
*
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in the same
* Region as this request. You can use either the configuration name or ARN value.
*
*
* @param configurationName
* Name of the matchmaking configuration to use for this request. Matchmaking configurations must exist in
* the same Region as this request. You can use either the configuration name or ARN value.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public StartMatchmakingRequest withConfigurationName(String configurationName) {
setConfigurationName(configurationName);
return this;
}
/**
*
* Information on each player to be matched. This information must include a player ID, and may contain player
* attributes and latency data to be used in the matchmaking process. After a successful match, Player
* objects contain the name of the team the player is assigned to.
*
*
* You can include up to 10 Players
in a StartMatchmaking
request.
*
*
* @return Information on each player to be matched. This information must include a player ID, and may contain
* player attributes and latency data to be used in the matchmaking process. After a successful match,
* Player
objects contain the name of the team the player is assigned to.
*
* You can include up to 10 Players
in a StartMatchmaking
request.
*/
public java.util.List getPlayers() {
return players;
}
/**
*
* Information on each player to be matched. This information must include a player ID, and may contain player
* attributes and latency data to be used in the matchmaking process. After a successful match, Player
* objects contain the name of the team the player is assigned to.
*
*
* You can include up to 10 Players
in a StartMatchmaking
request.
*
*
* @param players
* Information on each player to be matched. This information must include a player ID, and may contain
* player attributes and latency data to be used in the matchmaking process. After a successful match,
* Player
objects contain the name of the team the player is assigned to.
*
* You can include up to 10 Players
in a StartMatchmaking
request.
*/
public void setPlayers(java.util.Collection players) {
if (players == null) {
this.players = null;
return;
}
this.players = new java.util.ArrayList(players);
}
/**
*
* Information on each player to be matched. This information must include a player ID, and may contain player
* attributes and latency data to be used in the matchmaking process. After a successful match, Player
* objects contain the name of the team the player is assigned to.
*
*
* You can include up to 10 Players
in a StartMatchmaking
request.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setPlayers(java.util.Collection)} or {@link #withPlayers(java.util.Collection)} if you want to override
* the existing values.
*
*
* @param players
* Information on each player to be matched. This information must include a player ID, and may contain
* player attributes and latency data to be used in the matchmaking process. After a successful match,
* Player
objects contain the name of the team the player is assigned to.
*
* You can include up to 10 Players
in a StartMatchmaking
request.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public StartMatchmakingRequest withPlayers(Player... players) {
if (this.players == null) {
setPlayers(new java.util.ArrayList(players.length));
}
for (Player ele : players) {
this.players.add(ele);
}
return this;
}
/**
*
* Information on each player to be matched. This information must include a player ID, and may contain player
* attributes and latency data to be used in the matchmaking process. After a successful match, Player
* objects contain the name of the team the player is assigned to.
*
*
* You can include up to 10 Players
in a StartMatchmaking
request.
*
*
* @param players
* Information on each player to be matched. This information must include a player ID, and may contain
* player attributes and latency data to be used in the matchmaking process. After a successful match,
* Player
objects contain the name of the team the player is assigned to.
*
* You can include up to 10 Players
in a StartMatchmaking
request.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public StartMatchmakingRequest withPlayers(java.util.Collection players) {
setPlayers(players);
return this;
}
/**
* 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.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getTicketId() != null)
sb.append("TicketId: ").append(getTicketId()).append(",");
if (getConfigurationName() != null)
sb.append("ConfigurationName: ").append(getConfigurationName()).append(",");
if (getPlayers() != null)
sb.append("Players: ").append(getPlayers());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof StartMatchmakingRequest == false)
return false;
StartMatchmakingRequest other = (StartMatchmakingRequest) obj;
if (other.getTicketId() == null ^ this.getTicketId() == null)
return false;
if (other.getTicketId() != null && other.getTicketId().equals(this.getTicketId()) == false)
return false;
if (other.getConfigurationName() == null ^ this.getConfigurationName() == null)
return false;
if (other.getConfigurationName() != null && other.getConfigurationName().equals(this.getConfigurationName()) == false)
return false;
if (other.getPlayers() == null ^ this.getPlayers() == null)
return false;
if (other.getPlayers() != null && other.getPlayers().equals(this.getPlayers()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getTicketId() == null) ? 0 : getTicketId().hashCode());
hashCode = prime * hashCode + ((getConfigurationName() == null) ? 0 : getConfigurationName().hashCode());
hashCode = prime * hashCode + ((getPlayers() == null) ? 0 : getPlayers().hashCode());
return hashCode;
}
@Override
public StartMatchmakingRequest clone() {
return (StartMatchmakingRequest) super.clone();
}
}