ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/catalina/ha/backend/MultiCastSender.java

Path
ttomcat-1778514358873.zip-extract/apache-tomcat-11.0.18-src/java/org/apache/catalina/ha/backend/MultiCastSender.java
Status
scanned
Type
file
Name
MultiCastSender.java
Extension
.java
Programming language
Java
Mime type
text/plain
File type
ASCII text, with CRLF line terminators
Tag

      
    
Rootfs path

      
    
Size
3050 (3.0 KB)
MD5
9b1062dd2aa68fef295a010529642239
SHA1
3d6ce0b1787dab9fb0d00b57b4a093ca57ffb5d5
SHA256
9421dae2aa83cad64ab01006ad0939c5e3a105f0bd6c4ea7a236ec1a382ea683
SHA512

      
    
SHA1_git
98706ae3edf94bfe6026d251eb3fc42f91a06e15
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
MultiCastSender.java | 3.0 KB |

/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.catalina.ha.backend; import java.net.DatagramPacket; import java.net.InetAddress; import java.net.InetSocketAddress; import java.net.MulticastSocket; import java.nio.charset.StandardCharsets; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; import org.apache.tomcat.util.res.StringManager; /** * Sender to proxies using multicast socket. */ public class MultiCastSender implements Sender { private static final Log log = LogFactory.getLog(HeartbeatListener.class); private static final StringManager sm = StringManager.getManager(MultiCastSender.class); HeartbeatListener config = null; /* for multicasting stuff */ MulticastSocket s = null; InetAddress group = null; @Override public void init(HeartbeatListener config) throws Exception { this.config = config; } @Override public int send(String mess) throws Exception { if (s == null) { try { group = InetAddress.getByName(config.getGroup()); if (config.getHost() != null) { InetAddress addr = InetAddress.getByName(config.getHost()); InetSocketAddress addrs = new InetSocketAddress(addr, config.getMultiport()); s = new MulticastSocket(addrs); } else { s = new MulticastSocket(config.getMultiport()); } s.setTimeToLive(config.getTtl()); s.joinGroup(new InetSocketAddress(group, 0), null); } catch (Exception e) { log.error(sm.getString("multiCastSender.multiCastFailed"), e); s = null; return -1; } } byte[] buf; buf = mess.getBytes(StandardCharsets.US_ASCII); DatagramPacket data = new DatagramPacket(buf, buf.length, group, config.getMultiport()); try { s.send(data); } catch (Exception e) { log.error(sm.getString("multiCastSender.sendFailed"), e); s.close(); s = null; return -1; } return 0; } }
Detected license expression
apache-2.0
Detected license expression (SPDX)
Apache-2.0
Percentage of license text
36.84
Copyrights

      
    
Holders

      
    
Authors

      
    
License detections License expression License expression SPDX
apache_2_0-4bde3f57-78aa-4201-96bf-531cba09e7de apache-2.0 Apache-2.0
URL Start line End line
http://www.apache.org/licenses/LICENSE-2.0 9 9