Interface RoomService


public interface RoomService
Extension interface for room management related operations

Built-in default implementation

RoomService roomService = RoomService.of();

Since:
21.8
Author:
渔民小镇
date:
2022-03-31
  • Method Details

    • getRoomMap

      Map<Long,Room> getRoomMap()
      Room map
      key : roomId
      value : room
      
      Returns:
      Room map
    • getUserRoomMap

      Map<Long,Long> getUserRoomMap()
      User to room map
      key : userId
      value : roomId
      
      Returns:
      User to room map
    • getRoomByUserId

      default <T extends Room> T getRoomByUserId(long userId)
      Find room by userId
      Type Parameters:
      T - Room
      Parameters:
      userId - userId
      Returns:
      Room
    • getRoom

      default <T extends Room> T getRoom(long roomId)
      Find room by roomId
      Type Parameters:
      T - Room
      Parameters:
      roomId - roomId
      Returns:
      Room
    • optionalRoom

      default <T extends Room> Optional<T> optionalRoom(long roomId)
      Find room Optional by roomId
      Type Parameters:
      T - Room
      Parameters:
      roomId - roomId
      Returns:
      Optional Room
    • optionalRoomByUserId

      default <T extends Room> Optional<T> optionalRoomByUserId(long userId)
      Find room Optional by userId
      Type Parameters:
      T - Room
      Parameters:
      userId - userId
      Returns:
      Optional Room
    • addRoom

      default void addRoom(Room room)
      Add room
      Parameters:
      room - The room
    • removeRoom

      default void removeRoom(Room room)
      Remove room
      Parameters:
      room - The room
    • addPlayer

      default void addPlayer(Room room, Player player)
      Add user to the room and associate userId with roomId
      Parameters:
      room - The room
      player - The user
    • removePlayer

      default void removePlayer(Room room, Player player)
      Remove user from the room and delete the association between userId and roomId
      Parameters:
      room - The room
      player - The user
    • removePlayer

      default void removePlayer(Room room, long userId)
      Remove user from the room and delete the association between userId and roomId
      Parameters:
      room - The room
      userId - userId
    • listRoom

      default <T extends Room> Collection<T> listRoom()
      Get room list
      Type Parameters:
      T - Room
      Returns:
      Room list
    • of

      static RoomService of()
      Create a RoomService object instance (built-in default implementation)
      Returns:
      RoomService