优化目录订阅以及国标级联目录订阅回复
This commit is contained in:
@@ -220,4 +220,6 @@ public class SendRtpItem {
|
||||
public void setDialog(byte[] dialog) {
|
||||
this.dialog = dialog;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.genersoft.iot.vmp.gb28181.bean;
|
||||
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
@Component
|
||||
public class SubscribeHolder {
|
||||
|
||||
private static ConcurrentHashMap<String, SubscribeInfo> catalogMap = new ConcurrentHashMap<>();
|
||||
private static ConcurrentHashMap<String, SubscribeInfo> mobilePositionMap = new ConcurrentHashMap<>();
|
||||
|
||||
|
||||
public void putCatalogSubscribe(String platformId, SubscribeInfo subscribeInfo) {
|
||||
catalogMap.put(platformId, subscribeInfo);
|
||||
}
|
||||
|
||||
public SubscribeInfo getCatalogSubscribe(String platformId) {
|
||||
return catalogMap.get(platformId);
|
||||
}
|
||||
|
||||
public void removeCatalogSubscribe(String platformId) {
|
||||
catalogMap.remove(platformId);
|
||||
}
|
||||
|
||||
public void putMobilePositionSubscribe(String platformId, SubscribeInfo subscribeInfo) {
|
||||
mobilePositionMap.put(platformId, subscribeInfo);
|
||||
}
|
||||
|
||||
public SubscribeInfo getMobilePositionSubscribe(String platformId) {
|
||||
return mobilePositionMap.get(platformId);
|
||||
}
|
||||
|
||||
public void removeMobilePositionSubscribe(String platformId) {
|
||||
mobilePositionMap.remove(platformId);
|
||||
}
|
||||
}
|
||||
@@ -1,13 +1,15 @@
|
||||
package com.genersoft.iot.vmp.gb28181.bean;
|
||||
|
||||
import com.genersoft.iot.vmp.utils.SerializeUtils;
|
||||
|
||||
import javax.sip.Dialog;
|
||||
import javax.sip.RequestEvent;
|
||||
import javax.sip.ServerTransaction;
|
||||
import javax.sip.header.*;
|
||||
import javax.sip.message.Request;
|
||||
|
||||
public class SubscribeInfo {
|
||||
|
||||
public SubscribeInfo() {
|
||||
}
|
||||
|
||||
public SubscribeInfo(RequestEvent evt, String id) {
|
||||
this.id = id;
|
||||
@@ -23,6 +25,8 @@ public class SubscribeInfo {
|
||||
this.eventType = eventHeader.getEventType();
|
||||
ViaHeader viaHeader = (ViaHeader)request.getHeader(ViaHeader.NAME);
|
||||
this.branch = viaHeader.getBranch();
|
||||
this.transaction = evt.getServerTransaction();
|
||||
this.dialog = evt.getDialog();
|
||||
}
|
||||
|
||||
private String id;
|
||||
@@ -33,6 +37,8 @@ public class SubscribeInfo {
|
||||
private String fromTag;
|
||||
private String toTag;
|
||||
private String branch;
|
||||
private ServerTransaction transaction;
|
||||
private Dialog dialog;
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
@@ -97,4 +103,20 @@ public class SubscribeInfo {
|
||||
public void setBranch(String branch) {
|
||||
this.branch = branch;
|
||||
}
|
||||
|
||||
public ServerTransaction getTransaction() {
|
||||
return transaction;
|
||||
}
|
||||
|
||||
public void setTransaction(ServerTransaction transaction) {
|
||||
this.transaction = transaction;
|
||||
}
|
||||
|
||||
public Dialog getDialog() {
|
||||
return dialog;
|
||||
}
|
||||
|
||||
public void setDialog(Dialog dialog) {
|
||||
this.dialog = dialog;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user