接口 UserSessions<SessionContext,Session extends UserSession>

所有超级接口:
AttrOptionDynamic
所有已知实现类:
SocketUserSessions

public interface UserSessions<SessionContext,Session extends UserSession> extends AttrOptionDynamic
UserSession 管理器
作者:
渔民小镇
日期:
2023-02-18
  • 方法详细资料

    • add

      Session add(SessionContext sessionContext)
      加入到 session 管理
      参数:
      sessionContext - sessionContext
    • getUserSession

      Session getUserSession(SessionContext sessionContext)
      获取 UserSession
      参数:
      sessionContext - sessionContext
      返回:
      SessionContext
    • getUserSession

      Session getUserSession(long userId)
      获取 UserSession
      参数:
      userId - userId
      返回:
      UserSession
    • getUserSession

      Session getUserSession(UserChannelId userChannelId)
      getUserSession
      参数:
      userChannelId - userChannelId
      返回:
      userSession
    • ifPresent

      default void ifPresent(long userId, Consumer<Session> consumer)
      如果 UserSession 存在,则使用该值执行给定操作,否则不执行任何操作。
      参数:
      userId - userId
      consumer - 如果 UserSession 存在,则要执行的动作
    • ifPresent

      default void ifPresent(Collection<Long> userIdList, Consumer<Session> consumer)
      如果 UserSession 存在,则使用该值执行给定操作,否则不执行任何操作。
      参数:
      userIdList - userIdList 不能为 null
      consumer - 如果 UserSession 存在,则要执行的动作
    • existUserSession

      boolean existUserSession(long userId)
      true 用户存在
      参数:
      userId - 用户id
      返回:
      true 用户存在
    • settingUserId

      boolean settingUserId(UserChannelId userChannelId, long userId)
      设置 channel 的 userId,表示已经身份验证了(即登录过了)。
      参数:
      userChannelId - userChannelId
      userId - userId
      返回:
      true 设置成功
    • removeUserSession

      void removeUserSession(Session userSession)
      移除 UserSession
      参数:
      userSession - userSession
    • removeUserSession

      void removeUserSession(long userId, Object msg)
      根据 userId 移除 UserSession ,在移除前发送一个消息
           玩家存在时会触发
       
      参数:
      userId - userId
      msg - msg
    • setUserHook

      void setUserHook(UserHook userHook)
      userHook
      参数:
      userHook - userHook
    • countOnline

      int countOnline()
      当前在线人数
      返回:
      当前在线人数
    • broadcast

      void broadcast(Object msg)
      全员消息广播 消息类型 ExternalMessage
      参数:
      msg - 消息
    • forEach

      void forEach(Consumer<Session> consumer)
      遍历所有玩家
      参数:
      consumer - consumer