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 RoomSFSStorageException
void saveAllRooms() throws SFSStorageException
SFSStorageException
void saveAllRooms(java.lang.String groupId) throws SFSStorageException
groupId
- the group nameSFSStorageException
CreateRoomSettings loadRoom(java.lang.String name) throws SFSStorageException
name
- the name of the stored RoomSFSStorageException
CreateRoomSettings
,
SFSApi.createRoom(com.smartfoxserver.v2.entities.Zone, CreateRoomSettings, com.smartfoxserver.v2.entities.User)
java.util.List<CreateRoomSettings> loadAllRooms() throws SFSStorageException
SFSStorageException
CreateRoomSettings
,
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 nameSFSStorageException
CreateRoomSettings
,
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 RoomSFSStorageException
void removeAllRooms() throws SFSStorageException
SFSStorageException
void removeAllRooms(java.lang.String groupId) throws SFSStorageException
groupId
- the name of the Room GroupSFSStorageException
void destroy()