Summary: Inherited Constants | Fields | Methods | Inherited Methods | [Expand All]
public final class

# RoomEntity

extends Object
implements Parcelable SafeParcelable Room

java.lang.Object
↳ | com.google.android.gms.games.multiplayer.realtime.RoomEntity

## Class Overview

Data object representing the data for a room. This is immutable, andtherefore safe to cache or store. Note, however, that the data it represents may grow stale.

This class exists solely to support parceling these objects and should not be used directly.

## Summary

[Expand] Inherited Constants
From interface android.os.Parcelable
int | CONTENTS_FILE_DESCRIPTOR |
int | PARCELABLE_WRITE_RETURN_VALUE |
From interface com.google.android.gms.common.internal.safeparcel.SafeParcelable
String | NULL |
From interface com.google.android.gms.games.multiplayer.realtime.Room
int | ROOM_STATUS_ACTIVE | Constant returned by `getStatus()` indicating that the room is active and connections are established.
int | ROOM_STATUS_AUTO_MATCHING | Constant returned by `getStatus()` indicating that one or more slots are waiting to be filled by auto-matching.
int | ROOM_STATUS_CONNECTING | Constant returned by `getStatus()` indicating that this room is waiting for clients to connect to each other.
int | ROOM_STATUS_INVITING | Constant returned by `getStatus()` indicating that the room has one or more players that have been invited and have not responded yet.
int | ROOM_VARIANT_DEFAULT | Constant used to indicate that the variant for a room is unspecified.

Fields
public static final Creator<RoomEntity> | CREATOR |

Public Methods
boolean | equals(Object obj)
Room | freeze() Freeze a volatile representation into an immutable representation.
Bundle | getAutoMatchCriteria() Retrieves the automatch criteria used to create or join this room, if any.
int | getAutoMatchWaitEstimateSeconds() Retrieves the estimated wait time for automatching to finish for players who are not automatched immediately, as measured from the time that the room entered the automatching pool.
long | getCreationTimestamp()
String | getCreatorId()
String | getDescription()
void | getDescription(CharArrayBuffer dataOut) Loads the room description into the given `CharArrayBuffer`.
Participant | getParticipant(String participantId) Get a participant in a room by its ID.
String | getParticipantId(String playerId) Get the participant ID for a given player.
ArrayList<String> | getParticipantIds() Get the IDs of the participants of the given room.
int | getParticipantStatus(String participantId) Get the status of a participant in a room.
ArrayList<Participant> | getParticipants() Retrieve the `Participant`s for this object.
String | getRoomId()
int | getStatus()
int | getVariant()
int | hashCode()
boolean | isDataValid() Check to see if this object is valid for use.
String | toString()
void | writeToParcel(Parcel dest, int flags)

[Expand] Inherited Methods
From class java.lang.Object
Object | clone()
boolean | equals(Object arg0)
void | finalize()
final Class<?> | getClass()
int | hashCode()
final void | notify()
final void | notifyAll()
String | toString()
final void | wait(long arg0, int arg1)
final void | wait(long arg0)
final void | wait()
From interface android.os.Parcelable
abstract int | describeContents()
abstract void | writeToParcel(Parcel arg0, int arg1)
From interface com.google.android.gms.games.multiplayer.realtime.Room
abstract Bundle | getAutoMatchCriteria() Retrieves the automatch criteria used to create or join this room, if any.
abstract int | getAutoMatchWaitEstimateSeconds() Retrieves the estimated wait time for automatching to finish for players who are not automatched immediately, as measured from the time that the room entered the automatching pool.
abstract long | getCreationTimestamp()
abstract String | getCreatorId()
abstract String | getDescription()
abstract void | getDescription(CharArrayBuffer dataOut) Loads the room description into the given `CharArrayBuffer`.
abstract Participant | getParticipant(String participantId) Get a participant in a room by its ID.
abstract String | getParticipantId(String playerId) Get the participant ID for a given player.
abstract ArrayList<String> | getParticipantIds() Get the IDs of the participants of the given room.
abstract int | getParticipantStatus(String participantId) Get the status of a participant in a room.
abstract String | getRoomId()
abstract int | getStatus()
abstract int | getVariant()
From interface com.google.android.gms.common.data.Freezable
abstract Room | freeze() Freeze a volatile representation into an immutable representation.
abstract boolean | isDataValid() Check to see if this object is valid for use.
From interface com.google.android.gms.games.multiplayer.Participatable
abstract ArrayList<Participant> | getParticipants() Retrieve the `Participant`s for this object.

## Fields

#### public static final Creator<RoomEntity> CREATOR

## Public Methods

#### public boolean equals (Object obj)

#### public Room freeze ()

Freeze a volatile representation into an immutable representation. Objects returned from this call are safe to cache.

Note that the output of `freeze` may not be identical to the parent object, but should be equal. In other words:

     Freezable f1 = new Freezable();
     Freezable f2 = f1.freeze();
     f1 == f2 may not be true.
     f1.equals(f2) will be true.

##### Returns

- A concrete implementation of the data object.

#### public Bundle getAutoMatchCriteria ()

Retrieves the automatch criteria used to create or join this room, if any. May be null if the room has no automatch properties.

##### Returns

- A bundle containing the automatch criteria for this room.

#### public int getAutoMatchWaitEstimateSeconds ()

Retrieves the estimated wait time for automatching to finish for players who are not automatched immediately, as measured from the time that the room entered the automatching pool.

##### Returns

- The estimated wait time in seconds, or -1 if the room is not automatching or no estimate could be provided.

#### public long getCreationTimestamp ()

#### public String getCreatorId ()

#### public String getDescription ()

#### public void getDescription (CharArrayBuffer dataOut)

Loads the room description into the given `CharArrayBuffer`.

##### Parameters

dataOut | The buffer to load the data into.

#### public Participant getParticipant (String participantId)

Get a participant in a room by its ID. Note that the participant ID must correspond to a participant in this match, or this method will throw an exception.

##### Parameters

participantId | Match-local ID of the participant to retrieve status for.

##### Returns

- The participant corresponding to the given ID.

#### public String getParticipantId (String playerId)

Get the participant ID for a given player. This will only return a non-null ID if the player is actually a participant in the room and that player's identity is visible to the current player. Note that this will always return non-null for the current player.

##### Parameters

playerId | Player ID to find participant ID for.

##### Returns

- The participant ID corresponding to given player, or null if none found.

#### public ArrayList<String> getParticipantIds ()

Get the IDs of the participants of the given room.

##### Returns

- The IDs of the participants in this room. These are returned in the participant order of the room. Note that these are not stable across rooms.

#### public int getParticipantStatus (String participantId)

Get the status of a participant in a room. Note that the participant ID must correspond to a participant in this room, or this method will throw an exception.

##### Parameters

participantId | Room-local ID of the participant to retrieve status for.

##### Returns

- The current status of the participant in this room. One of `STATUS_INVITED`, `STATUS_JOINED`, `STATUS_DECLINED`, or `STATUS_LEFT`.

#### public ArrayList<Participant> getParticipants ()

Retrieve the `Participant`s for this object. This is a list of all Participants applicable to the given object.

##### Returns

- A list of `Participant`s for this object.

#### public String getRoomId ()

#### public int getStatus ()

#### public int getVariant ()

#### public int hashCode ()

#### public boolean isDataValid ()

Check to see if this object is valid for use. If the object is still volatile, this method will indicate whether or not the object can be safely used. The output of a call to `freeze()` will always be valid.

##### Returns

- whether or not the object is valid for use.

#### public String toString ()

#### public void writeToParcel (Parcel dest, int flags)