对比新文件 |
| | |
| | | package com.iailab.framework.websocket.core.util; |
| | | |
| | | import com.iailab.framework.security.core.LoginUser; |
| | | import org.springframework.web.socket.WebSocketSession; |
| | | |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 专属于 web 包的工具类 |
| | | * |
| | | * @author iailab |
| | | */ |
| | | public class WebSocketFrameworkUtils { |
| | | |
| | | public static final String ATTRIBUTE_LOGIN_USER = "LOGIN_USER"; |
| | | |
| | | /** |
| | | * 设置当前用户 |
| | | * |
| | | * @param loginUser 登录用户 |
| | | * @param attributes Session |
| | | */ |
| | | public static void setLoginUser(LoginUser loginUser, Map<String, Object> attributes) { |
| | | attributes.put(ATTRIBUTE_LOGIN_USER, loginUser); |
| | | } |
| | | |
| | | /** |
| | | * 获取当前用户 |
| | | * |
| | | * @return 当前用户 |
| | | */ |
| | | public static LoginUser getLoginUser(WebSocketSession session) { |
| | | return (LoginUser) session.getAttributes().get(ATTRIBUTE_LOGIN_USER); |
| | | } |
| | | |
| | | /** |
| | | * 获得当前用户的编号 |
| | | * |
| | | * @return 用户编号 |
| | | */ |
| | | public static Long getLoginUserId(WebSocketSession session) { |
| | | LoginUser loginUser = getLoginUser(session); |
| | | return loginUser != null ? loginUser.getId() : null; |
| | | } |
| | | |
| | | /** |
| | | * 获得当前用户的类型 |
| | | * |
| | | * @return 用户编号 |
| | | */ |
| | | public static Integer getLoginUserType(WebSocketSession session) { |
| | | LoginUser loginUser = getLoginUser(session); |
| | | return loginUser != null ? loginUser.getUserType() : null; |
| | | } |
| | | |
| | | /** |
| | | * 获得当前用户的租户编号 |
| | | * |
| | | * @param session Session |
| | | * @return 租户编号 |
| | | */ |
| | | public static Long getTenantId(WebSocketSession session) { |
| | | LoginUser loginUser = getLoginUser(session); |
| | | return loginUser != null ? loginUser.getTenantId() : null; |
| | | } |
| | | |
| | | } |