summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorliang chao <[email protected]>2023-08-28 03:30:06 +0000
committerliang chao <[email protected]>2023-08-28 03:30:06 +0000
commitb9463f07acbe0750c6ede8a376599ae2fcd19cbd (patch)
treebbd63b44441b7441a68fff883dfd21e8c4b318e6
parentda572f4bd05cd43641f16b31cd58552fb8769676 (diff)
parent35e2807a91984db6d62bf87d10af9d345bed2f0e (diff)
Merge branch 'release/1.0' into 'main'v1.0-rc3
merge: 1.0-rc3 See merge request galaxy/tsg_olap/sip-rtp-correlation!10
-rw-r--r--CHANGELOG.md4
-rw-r--r--pom.xml16
-rw-r--r--src/main/java/com/zdjizhi/flink/voip/CorrelateApp.java2
-rw-r--r--src/main/java/com/zdjizhi/flink/voip/error/ErrorHandler.java33
4 files changed, 45 insertions, 10 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..22339a4
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,4 @@
+# Changelog
+
+### Hotfix
+ - [#5](https://git.mesalab.cn/galaxy/tsg_olap/sip-rtp-correlation/-/issues/5) 修复了由于 IPUtil 在判断 Ipv6 地址没有判空而引起的空指针异常 \ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 644b7fe..9ad26c3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
<groupId>com.zdjizhi</groupId>
<artifactId>sip-rtp-correlation</artifactId>
- <version>1.0-rc1</version>
+ <version>1.0-rc3</version>
<name>Flink : SIP-RTP : Correlation</name>
@@ -286,6 +286,20 @@
</plugin>
<plugin>
+ <groupId>io.github.zlika</groupId>
+ <artifactId>reproducible-build-maven-plugin</artifactId>
+ <version>0.2</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>strip-jar</goal>
+ </goals>
+ <phase>package</phase>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.1</version>
diff --git a/src/main/java/com/zdjizhi/flink/voip/CorrelateApp.java b/src/main/java/com/zdjizhi/flink/voip/CorrelateApp.java
index 4136c4c..58b5e53 100644
--- a/src/main/java/com/zdjizhi/flink/voip/CorrelateApp.java
+++ b/src/main/java/com/zdjizhi/flink/voip/CorrelateApp.java
@@ -94,6 +94,6 @@ public class CorrelateApp {
voIpOperator.addSink(producer);
- env.execute("VoIP Fusion Job");
+ env.execute("SIP-RTP-CORRELATION");
}
}
diff --git a/src/main/java/com/zdjizhi/flink/voip/error/ErrorHandler.java b/src/main/java/com/zdjizhi/flink/voip/error/ErrorHandler.java
index 683395a..8f79f05 100644
--- a/src/main/java/com/zdjizhi/flink/voip/error/ErrorHandler.java
+++ b/src/main/java/com/zdjizhi/flink/voip/error/ErrorHandler.java
@@ -104,16 +104,16 @@ class MeaninglessAddressProcessFunction extends ProcessFunction<ObjectNode, Obje
record.getServerPort() >= 0;
final SIPRecord sipRecord = new SIPRecord(obj);
- boolean cond2 = !IPUtil.isIPAddress(sipRecord.getOriginatorSdpConnectIp())
- || IPUtil.internalIp(sipRecord.getOriginatorSdpConnectIp());
- boolean cond3 = !IPUtil.isIPAddress(sipRecord.getResponderSdpConnectIp())
- || IPUtil.internalIp(sipRecord.getResponderSdpConnectIp());
- boolean cond4 = IPUtil.isIPAddress(sipRecord.getOriginatorSdpConnectIp())
- || IPUtil.isIPAddress(sipRecord.getResponderSdpConnectIp());
+ boolean cond2 = !isIPAddress(sipRecord.getOriginatorSdpConnectIp())
+ || isInternalIp(sipRecord.getOriginatorSdpConnectIp());
+ boolean cond3 = !isIPAddress(sipRecord.getResponderSdpConnectIp())
+ || isInternalIp(sipRecord.getResponderSdpConnectIp());
+ boolean cond4 = isIPAddress(sipRecord.getOriginatorSdpConnectIp())
+ || isIPAddress(sipRecord.getResponderSdpConnectIp());
boolean cond5 = SchemaType.SIP.equals(sipRecord.getSchemaType());
boolean cond6 = StreamDir.DOUBLE == sipRecord.getStreamDir() &&
- IPUtil.internalIp(sipRecord.getResponderSdpConnectIp()) &&
- IPUtil.internalIp(sipRecord.getOriginatorSdpConnectIp());
+ isInternalIp(sipRecord.getResponderSdpConnectIp()) &&
+ isInternalIp(sipRecord.getOriginatorSdpConnectIp());
// Both client and server addresses in the data are valid.
if (cond1 && (
@@ -132,4 +132,21 @@ class MeaninglessAddressProcessFunction extends ProcessFunction<ObjectNode, Obje
}
}
}
+
+ // ======================================================================================
+ // ----------------------------------- private helper -----------------------------------
+
+ private static boolean isIPAddress(final String ipaddr) {
+ if (null == ipaddr) {
+ return false;
+ }
+ return IPUtil.isIPAddress(ipaddr);
+ }
+
+ private static boolean isInternalIp(final String ipaddr) {
+ if (!isIPAddress(ipaddr)) {
+ return false;
+ }
+ return IPUtil.internalIp(ipaddr);
+ }
} \ No newline at end of file