refactor(video): ISIPProcessorObserver 接口补齐注册方法,processor 改依赖接口

- 原先 addRequestProcessor / addResponseProcessor 只在实现类
  SIPProcessorObserver 上,13 个处理器在 afterPropertiesSet 里
  @Autowired 实现类才能自注册,耦合到具体实现。
- 把两个 register 方法提到 ISIPProcessorObserver 接口上,
  13 个 processor 的注入类型改为 ISIPProcessorObserver,
  处理器侧不再感知具体实现,方便后续测试 mock / 多实现。
- 本次只改注入类型与接口签名,消息分发行为不变。
This commit is contained in:
lzh
2026-04-23 15:05:00 +08:00
parent 6b50254a96
commit 38681c39c1
14 changed files with 33 additions and 26 deletions

View File

@@ -1,6 +1,13 @@
package com.viewsh.module.video.gb28181.transmit;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.response.ISIPResponseProcessor;
import javax.sip.SipListener;
public interface ISIPProcessorObserver extends SipListener {
void addRequestProcessor(String method, ISIPRequestProcessor processor);
void addResponseProcessor(String method, ISIPResponseProcessor processor);
}

View File

@@ -11,7 +11,7 @@ import com.viewsh.module.video.gb28181.service.IDeviceChannelService;
import com.viewsh.module.video.gb28181.service.IDeviceService;
import com.viewsh.module.video.gb28181.service.IPlatformService;
import com.viewsh.module.video.gb28181.service.IPlayService;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
import com.viewsh.module.video.media.bean.MediaServer;
@@ -43,7 +43,7 @@ public class AckRequestProcessor extends SIPRequestProcessorParent implements In
private final String method = "ACK";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Override
public void afterPropertiesSet() throws Exception {

View File

@@ -8,7 +8,7 @@ import com.viewsh.module.video.gb28181.bean.*;
import com.viewsh.module.video.gb28181.service.*;
import com.viewsh.module.video.gb28181.session.AudioBroadcastManager;
import com.viewsh.module.video.gb28181.session.SipInviteSessionManager;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.cmd.ISIPCommander;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
@@ -71,7 +71,7 @@ public class ByeRequestProcessor extends SIPRequestProcessorParent implements In
private IMediaServerService mediaServerService;
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private SipInviteSessionManager sessionManager;

View File

@@ -1,6 +1,6 @@
package com.viewsh.module.video.gb28181.transmit.event.request.impl;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
import org.springframework.beans.factory.InitializingBean;
@@ -18,7 +18,7 @@ public class CancelRequestProcessor extends SIPRequestProcessorParent implements
private final String method = "CANCEL";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Override
public void afterPropertiesSet() throws Exception {

View File

@@ -12,7 +12,7 @@ import com.viewsh.module.video.gb28181.service.*;
import com.viewsh.module.video.gb28181.session.AudioBroadcastManager;
import com.viewsh.module.video.gb28181.session.SSRCFactory;
import com.viewsh.module.video.gb28181.session.SipInviteSessionManager;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.cmd.ISIPCommanderForPlatform;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
@@ -91,7 +91,7 @@ public class InviteRequestProcessor extends SIPRequestProcessorParent implements
private AudioBroadcastManager audioBroadcastManager;
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private SipConfig config;

View File

@@ -3,7 +3,7 @@ package com.viewsh.module.video.gb28181.transmit.event.request.impl;
import com.viewsh.module.video.framework.sip.SipConfig;
import com.viewsh.module.video.gb28181.bean.*;
import com.viewsh.module.video.gb28181.event.EventPublisher;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
import com.viewsh.module.video.gb28181.utils.NumericUtil;
@@ -46,7 +46,7 @@ public class NotifyRequestProcessor extends SIPRequestProcessorParent implements
private final String method = "NOTIFY";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private IDeviceChannelService deviceChannelService;

View File

@@ -9,7 +9,7 @@ import com.viewsh.module.video.gb28181.bean.GbSipDate;
import com.viewsh.module.video.common.RemoteAddressInfo;
import com.viewsh.module.video.gb28181.bean.SipTransactionInfo;
import com.viewsh.module.video.gb28181.service.IDeviceService;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.SIPSender;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
@@ -53,7 +53,7 @@ public class RegisterRequestProcessor extends SIPRequestProcessorParent implemen
private SipConfig sipConfig;
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private IDeviceService deviceService;

View File

@@ -2,7 +2,7 @@ package com.viewsh.module.video.gb28181.transmit.event.request.impl;
import com.viewsh.module.video.gb28181.bean.*;
import com.viewsh.module.video.gb28181.service.IPlatformService;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.SIPSender;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
@@ -36,7 +36,7 @@ public class SubscribeRequestProcessor extends SIPRequestProcessorParent impleme
private final String method = "SUBSCRIBE";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private SubscribeHolder subscribeHolder;

View File

@@ -5,7 +5,7 @@ import com.viewsh.module.video.gb28181.bean.*;
import com.viewsh.module.video.gb28181.event.SipSubscribe;
import com.viewsh.module.video.gb28181.service.*;
import com.viewsh.module.video.gb28181.session.SipInviteSessionManager;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.cmd.impl.SIPCommander;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
@@ -35,7 +35,7 @@ public class InfoRequestProcessor extends SIPRequestProcessorParent implements I
private final String method = "INFO";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private IPlatformService platformService;

View File

@@ -8,7 +8,7 @@ import com.viewsh.module.video.gb28181.event.SipSubscribe;
import com.viewsh.module.video.gb28181.event.sip.SipEvent;
import com.viewsh.module.video.gb28181.service.IPlatformService;
import com.viewsh.module.video.gb28181.session.SipInviteSessionManager;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.event.request.ISIPRequestProcessor;
import com.viewsh.module.video.gb28181.transmit.event.request.SIPRequestProcessorParent;
import com.viewsh.module.video.gb28181.utils.SipUtils;
@@ -40,7 +40,7 @@ public class MessageRequestProcessor extends SIPRequestProcessorParent implement
private static final Map<String, IMessageHandler> messageHandlerMap = new ConcurrentHashMap<>();
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private IPlatformService platformService;

View File

@@ -1,6 +1,6 @@
package com.viewsh.module.video.gb28181.transmit.event.response.impl;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.event.response.SIPResponseProcessorAbstract;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -18,7 +18,7 @@ public class ByeResponseProcessor extends SIPResponseProcessorAbstract {
private final String method = "BYE";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Override
public void afterPropertiesSet() throws Exception {

View File

@@ -1,6 +1,6 @@
package com.viewsh.module.video.gb28181.transmit.event.response.impl;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.event.response.SIPResponseProcessorAbstract;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -18,7 +18,7 @@ public class CancelResponseProcessor extends SIPResponseProcessorAbstract {
private final String method = "CANCEL";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Override
public void afterPropertiesSet() throws Exception {

View File

@@ -1,7 +1,7 @@
package com.viewsh.module.video.gb28181.transmit.event.response.impl;
import com.viewsh.module.video.gb28181.bean.Gb28181Sdp;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.SIPSender;
import com.viewsh.module.video.gb28181.transmit.cmd.SIPRequestHeaderProvider;
import com.viewsh.module.video.gb28181.transmit.event.response.SIPResponseProcessorAbstract;
@@ -37,7 +37,7 @@ public class InviteResponseProcessor extends SIPResponseProcessorAbstract {
private final String method = "INVITE";
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private SIPSender sipSender;

View File

@@ -5,7 +5,7 @@ import com.viewsh.module.video.gb28181.bean.SipTransactionInfo;
import com.viewsh.module.video.gb28181.event.SipSubscribe;
import com.viewsh.module.video.gb28181.event.sip.SipEvent;
import com.viewsh.module.video.gb28181.service.IPlatformService;
import com.viewsh.module.video.gb28181.transmit.SIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.ISIPProcessorObserver;
import com.viewsh.module.video.gb28181.transmit.cmd.ISIPCommanderForPlatform;
import com.viewsh.module.video.gb28181.transmit.event.response.SIPResponseProcessorAbstract;
import com.viewsh.module.video.storager.IRedisCatchStorage;
@@ -39,7 +39,7 @@ public class RegisterResponseProcessor extends SIPResponseProcessorAbstract {
private IRedisCatchStorage redisCatchStorage;
@Autowired
private SIPProcessorObserver sipProcessorObserver;
private ISIPProcessorObserver sipProcessorObserver;
@Autowired
private IPlatformService platformService;