From 96ac3d5b8d990566876d8ddc7332aa09cc20c95a Mon Sep 17 00:00:00 2001 From: hunan Date: Wed, 3 Aug 2022 16:03:08 +0800 Subject: [PATCH] =?UTF-8?q?Revert=20"=E6=88=BF=E9=97=B4=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E8=BF=94=E5=9B=9Etoken"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit f52947aec191486134a25faa6a585a18e2c20180. --- .../chat/demo/service/EventServiceImpl.java | 7 ++++++ .../chat/demo/service/LoginServiceImpl.java | 25 ++++++------------- .../zhangshu/chat/demo/service/RoomCache.java | 13 ---------- .../chat/demo/service/RoomServiceImpl.java | 21 +++------------- .../zhangshu/chat/demo/vo/RoomDetailVo.java | 1 - .../com/zhangshu/chat/demo/vo/RoomVo.java | 2 -- 6 files changed, 17 insertions(+), 52 deletions(-) diff --git a/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java b/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java index b2114c5..495d710 100644 --- a/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java +++ b/src/main/java/com/zhangshu/chat/demo/service/EventServiceImpl.java @@ -1,5 +1,7 @@ package com.zhangshu.chat.demo.service; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.bean.copier.CopyOptions; import com.zhangshu.chat.demo.config.AgoraProperties; import com.zhangshu.chat.demo.constant.ERoomUserType; import com.zhangshu.chat.demo.dto.AgoraChannelEventDto; @@ -12,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.stereotype.Service; +import java.util.Map; import java.util.Objects; @Service @@ -24,6 +27,10 @@ public class EventServiceImpl implements EventService { @Autowired UserMapper userMapper; + T mapToBean(Map map, Class targetClass) { + return BeanUtil.mapToBean(map, targetClass, false, CopyOptions.create()); + } + @Override public void agora(AgoraEventDto dto) { switch (dto.getEventType()) { diff --git a/src/main/java/com/zhangshu/chat/demo/service/LoginServiceImpl.java b/src/main/java/com/zhangshu/chat/demo/service/LoginServiceImpl.java index 711b196..45bcb33 100644 --- a/src/main/java/com/zhangshu/chat/demo/service/LoginServiceImpl.java +++ b/src/main/java/com/zhangshu/chat/demo/service/LoginServiceImpl.java @@ -27,8 +27,7 @@ public class LoginServiceImpl implements LoginService { JwtProvider jwtProvider; @Autowired AuthenticationManager authenticationManager; - @Autowired - RoomCache roomCache; + @Override public LoginVo login(LoginDto dto) { @@ -54,22 +53,12 @@ public class LoginServiceImpl implements LoginService { public LoginVo agoraToken(Authentication authentication, String channelName, int role) { RtcTokenBuilder2.Role role2 = role == 1 ? RtcTokenBuilder2.Role.ROLE_PUBLISHER : RtcTokenBuilder2.Role.ROLE_SUBSCRIBER; UserDetailsImpl userInfo = (UserDetailsImpl) authentication.getPrincipal(); - - String token = new RtcTokenBuilder2().buildTokenWithUid( - agoraProperties.getAppId(), - agoraProperties.getAppCertificate(), - channelName, - userInfo.getId().intValue(), - role2, - agoraProperties.getTokenExpiration(), - agoraProperties.getPrivilegeExpiration() - ); - - - // cache roomId and it's token - roomCache.tokenMapping(channelName, token); - - return LoginVo.builder().token(token).build(); + RtcTokenBuilder2 token = new RtcTokenBuilder2(); + String result = token.buildTokenWithUid(agoraProperties.getAppId(), agoraProperties.getAppCertificate(), + channelName, userInfo.getId().intValue(), role2, + agoraProperties.getTokenExpiration(), agoraProperties.getPrivilegeExpiration()); + return LoginVo.builder() + .token(result).build(); } diff --git a/src/main/java/com/zhangshu/chat/demo/service/RoomCache.java b/src/main/java/com/zhangshu/chat/demo/service/RoomCache.java index 36bd509..b9f739f 100644 --- a/src/main/java/com/zhangshu/chat/demo/service/RoomCache.java +++ b/src/main/java/com/zhangshu/chat/demo/service/RoomCache.java @@ -19,19 +19,6 @@ public class RoomCache { * 正在创建 */ private final Cache roomCreatingCache = CacheUtil.newFIFOCache(4); - /** - * roomId -> agoraToken 映射 - */ - private final Cache roomTokenCache = CacheUtil.newFIFOCache(4); - - - public void tokenMapping(String roomId, String token) { - roomTokenCache.put(roomId, token); - } - - public String tokenMapping(String roomId) { - return roomTokenCache.get(roomId); - } public List list() { List resp = new ArrayList<>(roomCache.size()); diff --git a/src/main/java/com/zhangshu/chat/demo/service/RoomServiceImpl.java b/src/main/java/com/zhangshu/chat/demo/service/RoomServiceImpl.java index a789299..39d13b9 100644 --- a/src/main/java/com/zhangshu/chat/demo/service/RoomServiceImpl.java +++ b/src/main/java/com/zhangshu/chat/demo/service/RoomServiceImpl.java @@ -11,32 +11,21 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.List; -import java.util.function.Consumer; -import java.util.function.Function; -import java.util.function.Supplier; - @Slf4j @Service public class RoomServiceImpl implements RoomService { @Autowired RoomCache roomCache; + @Override public CommonPageResult page(PageDto pageDto) { - List page = RoomConvert.INSTANCE.convert(roomCache.list()); - - for (RoomVo roomVo : page) { - setToken(roomVo.getId(), roomVo::setToken); - } - return CommonPageResult.of(page); + return CommonPageResult.of(RoomConvert.INSTANCE.convert(roomCache.list())); } @Override public RoomDetailVo detail(String id) { - RoomDetailVo vo = RoomConvert.INSTANCE.convertDetail(roomCache.get(id)); - setToken(vo.getId(), vo::setToken); - return vo; + return RoomConvert.INSTANCE.convertDetail(roomCache.get(id)); } @Override @@ -50,8 +39,4 @@ public class RoomServiceImpl implements RoomService { return roomCache.createSuccess(roomId); } - private void setToken(String id, Consumer setter) { - String token = roomCache.tokenMapping(id); - setter.accept(token); - } } diff --git a/src/main/java/com/zhangshu/chat/demo/vo/RoomDetailVo.java b/src/main/java/com/zhangshu/chat/demo/vo/RoomDetailVo.java index 02afcfd..c655ce2 100644 --- a/src/main/java/com/zhangshu/chat/demo/vo/RoomDetailVo.java +++ b/src/main/java/com/zhangshu/chat/demo/vo/RoomDetailVo.java @@ -9,6 +9,5 @@ import java.util.List; public class RoomDetailVo { private String id; private String name; - private String token; private List userList; } diff --git a/src/main/java/com/zhangshu/chat/demo/vo/RoomVo.java b/src/main/java/com/zhangshu/chat/demo/vo/RoomVo.java index a8adbf7..3b9f41c 100644 --- a/src/main/java/com/zhangshu/chat/demo/vo/RoomVo.java +++ b/src/main/java/com/zhangshu/chat/demo/vo/RoomVo.java @@ -6,6 +6,4 @@ import lombok.Data; public class RoomVo { private String id; private String name; - private String token; - }