public interface IRoomStorage
The Room Persistence API provide a way of storing Rooms and their relative states (Room Variables) to disk or database.
The API can be accessed via Extensions from the Zone object, using Zone.getRoomPersistenceApi()
Example:
// Init method of a Zone Extension
public void init()
{
//Initialize Persistence API
getParentZone().initRoomPersistence(RoomStorageMode.FILE_STORAGE, new FileRoomStorageConfig());
// Load all previously stored Rooms
try
{
getParentZone().getRoomPersistenceApi().loadAllRooms();
}
catch (SFSStorageException error)
{
trace("Error loading rooms: " + error);
}
}
DBRoomStorage,
FileRoomStorage| Modifier and Type | Method and Description |
|---|---|
void |
destroy()
Invoked by the system
|
java.util.List<CreateRoomSettings> |
loadAllRooms()
Load all stored Rooms for this Zone
|
java.util.List<CreateRoomSettings> |
loadAllRooms(java.lang.String groupId)
Load all Rooms belonging to a specific Room Group
|
CreateRoomSettings |
loadRoom(java.lang.String name)
Loads the setting of a previously saved Room
|
void |
removeAllRooms()
Remove all stored Rooms for this Zone from the storage system (Use wisely!)
|
void |
removeAllRooms(java.lang.String groupId)
Remove all stored Rooms belonging to a specific Room Group
|
void |
removeRoom(java.lang.String name)
Remove a saved Room from the storage system
|
void |
saveAllRooms()
Saves all Rooms in the Zone
|
void |
saveAllRooms(java.lang.String groupId)
Saves all Rooms belonging to the provided group name
|
void |
saveRoom(Room theRoom)
Save a Room and its state
|
void saveRoom(Room theRoom) throws SFSStorageException
theRoom - a reference to a RoomSFSStorageExceptionvoid saveAllRooms()
throws SFSStorageException
SFSStorageExceptionvoid saveAllRooms(java.lang.String groupId)
throws SFSStorageException
groupId - the group nameSFSStorageExceptionCreateRoomSettings loadRoom(java.lang.String name) throws SFSStorageException
name - the name of the stored RoomSFSStorageExceptionCreateRoomSettings,
SFSApi.createRoom(com.smartfoxserver.v2.entities.Zone, CreateRoomSettings, com.smartfoxserver.v2.entities.User)java.util.List<CreateRoomSettings> loadAllRooms() throws SFSStorageException
SFSStorageExceptionCreateRoomSettings,
SFSApi.createRoom(com.smartfoxserver.v2.entities.Zone, CreateRoomSettings, com.smartfoxserver.v2.entities.User)java.util.List<CreateRoomSettings> loadAllRooms(java.lang.String groupId) throws SFSStorageException
groupId - the Room Group nameSFSStorageExceptionCreateRoomSettings,
SFSApi.createRoom(com.smartfoxserver.v2.entities.Zone, CreateRoomSettings, com.smartfoxserver.v2.entities.User)void removeRoom(java.lang.String name)
throws SFSStorageException
name - the name of the RoomSFSStorageExceptionvoid removeAllRooms()
throws SFSStorageException
SFSStorageExceptionvoid removeAllRooms(java.lang.String groupId)
throws SFSStorageException
groupId - the name of the Room GroupSFSStorageExceptionvoid destroy()