You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2023/01/12 16:58:06 UTC
[tomcat] 01/02: Fix calls to deprecated (Java 14+) code
This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 10.1.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 13025120a214193d6352fc6a5d67b1432316c3be
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Thu Jan 12 14:57:39 2023 +0000
Fix calls to deprecated (Java 14+) code
---
.../catalina/ha/backend/MultiCastSender.java | 2 +-
.../tribes/membership/McastServiceImpl.java | 24 ++++++++++++++++------
2 files changed, 19 insertions(+), 7 deletions(-)
diff --git a/java/org/apache/catalina/ha/backend/MultiCastSender.java b/java/org/apache/catalina/ha/backend/MultiCastSender.java
index 1e00ee8dc3..2568a0e75b 100644
--- a/java/org/apache/catalina/ha/backend/MultiCastSender.java
+++ b/java/org/apache/catalina/ha/backend/MultiCastSender.java
@@ -60,7 +60,7 @@ public class MultiCastSender
}
s.setTimeToLive(config.getTtl());
- s.joinGroup(group);
+ s.joinGroup(new InetSocketAddress(group, 0), null);
} catch (Exception ex) {
log.error(sm.getString("multiCastSender.multiCastFailed"), ex);
s = null;
diff --git a/java/org/apache/catalina/tribes/membership/McastServiceImpl.java b/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
index 068a383440..1fac0a4207 100644
--- a/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
+++ b/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
@@ -23,7 +23,9 @@ import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.MulticastSocket;
+import java.net.NetworkInterface;
import java.net.SocketTimeoutException;
+import java.net.StandardSocketOptions;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -217,12 +219,14 @@ public class McastServiceImpl extends MembershipProviderBase {
} else {
socket = new MulticastSocket(port);
}
- socket.setLoopbackMode(localLoopbackDisabled); //hint if we want disable loop back(local machine) messages
+ // Hint if we want disable loop back(local machine) messages
+ socket.setOption(StandardSocketOptions.IP_MULTICAST_LOOP, Boolean.valueOf(!localLoopbackDisabled));
if (mcastBindAddress != null) {
if(log.isInfoEnabled()) {
log.info(sm.getString("mcastServiceImpl.setInterface", mcastBindAddress));
}
- socket.setInterface(mcastBindAddress);
+ NetworkInterface networkInterface = NetworkInterface.getByInetAddress(mcastBindAddress);
+ socket.setNetworkInterface(networkInterface);
} //end if
//force a so timeout so that we don't block forever
if (mcastSoTimeout <= 0) {
@@ -258,7 +262,7 @@ public class McastServiceImpl extends MembershipProviderBase {
}
try {
if ( sender == null ) {
- socket.joinGroup(address);
+ socket.joinGroup(new InetSocketAddress(address, 0), null);
}
}catch (IOException iox) {
log.error(sm.getString("mcastServiceImpl.unable.join"));
@@ -275,7 +279,7 @@ public class McastServiceImpl extends MembershipProviderBase {
throw new IllegalStateException(sm.getString("mcastServiceImpl.send.running"));
}
if ( receiver == null ) {
- socket.joinGroup(address);
+ socket.joinGroup(new InetSocketAddress(address, 0), null);
}
//make sure at least one packet gets out there
send(false);
@@ -343,8 +347,16 @@ public class McastServiceImpl extends MembershipProviderBase {
member.setCommand(Member.SHUTDOWN_PAYLOAD);
send(false);
//leave mcast group
- try {socket.leaveGroup(address);}catch ( Exception ignore){}
- try {socket.close();}catch ( Exception ignore){}
+ try {
+ socket.leaveGroup(new InetSocketAddress(address, 0), null);
+ } catch ( Exception ignore) {
+ // NO-OP
+ }
+ try {
+ socket.close();
+ } catch (Exception ignore) {
+ // NO-OP
+ }
member.setServiceStartTime(-1);
}
return (startLevel == 0);
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org