From 6968839f21fb05bf6e3204c2040ee47130006cd0 Mon Sep 17 00:00:00 2001
From: panlinlin <648540858@qq.com>
Date: 星期日, 27 十二月 2020 08:19:34 +0800
Subject: [PATCH] 修复空指针异常

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java |   47 ++++++++++++++++++++++++++++++++---------------
 1 files changed, 32 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java
index 716f482..0ba6bd8 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/ByeRequestProcessor.java
@@ -1,33 +1,50 @@
 package com.genersoft.iot.vmp.gb28181.transmit.request.impl;
 
+import javax.sip.InvalidArgumentException;
 import javax.sip.RequestEvent;
-import javax.sip.ServerTransaction;
+import javax.sip.SipException;
+import javax.sip.message.Response;
 
-import org.springframework.stereotype.Component;
+import com.genersoft.iot.vmp.gb28181.transmit.request.SIPRequestAbstractProcessor;
 
-import com.genersoft.iot.vmp.gb28181.SipLayer;
-import com.genersoft.iot.vmp.gb28181.transmit.request.ISIPRequestProcessor;
+import java.text.ParseException;
 
 /**    
  * @Description: BYE璇锋眰澶勭悊鍣�
- * @author: songww
+ * @author: swwheihei
  * @date:   2020骞�5鏈�3鏃� 涓嬪崍5:32:05     
  */
-@Component
-public class ByeRequestProcessor implements ISIPRequestProcessor {
+public class ByeRequestProcessor extends SIPRequestAbstractProcessor {
 
-	/**   
+	/**
 	 * 澶勭悊BYE璇锋眰
-	 * 
 	 * @param evt
-	 * @param layer
-	 * @param transaction
-	 * @param config    
-	 */  
+	 */
 	@Override
-	public void process(RequestEvent evt, SipLayer layer) {
-		// TODO Auto-generated method stub
+	public void process(RequestEvent evt) {
+		try {
+			responseAck(evt);
+		} catch (SipException e) {
+			e.printStackTrace();
+		} catch (InvalidArgumentException e) {
+			e.printStackTrace();
+		} catch (ParseException e) {
+			e.printStackTrace();
+		}
+		// TODO 浼樺厛绾�99 Bye Request娑堟伅瀹炵幇锛屾娑堟伅涓�鑸负绾ц仈娑堟伅锛屼笂绾х粰涓嬬骇鍙戦�佽棰戝仠姝㈡寚浠�
 		
 	}
 
+	/***
+	 * 鍥炲200 OK
+	 * @param evt
+	 * @throws SipException
+	 * @throws InvalidArgumentException
+	 * @throws ParseException
+	 */
+	private void responseAck(RequestEvent evt) throws SipException, InvalidArgumentException, ParseException {
+		Response response = getMessageFactory().createResponse(Response.OK, evt.getRequest());
+		getServerTransaction(evt).sendResponse(response);
+	}
+
 }

--
Gitblit v1.8.0