当前位置: 首页>>代码示例>>Java>>正文


Java InetAddress.isMulticastAddress方法代码示例

本文整理汇总了Java中java.net.InetAddress.isMulticastAddress方法的典型用法代码示例。如果您正苦于以下问题:Java InetAddress.isMulticastAddress方法的具体用法?Java InetAddress.isMulticastAddress怎么用?Java InetAddress.isMulticastAddress使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在java.net.InetAddress的用法示例。


在下文中一共展示了InetAddress.isMulticastAddress方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: sortKey

import java.net.InetAddress; //导入方法依赖的package包/类
/** Sorts an address by preference. This way code like publishing can just pick the first one */
static int sortKey(InetAddress address, boolean prefer_v6) {
    int key = address.getAddress().length;
    if (prefer_v6) {
        key = -key;
    }
    
    if (address.isAnyLocalAddress()) {
        key += 5;
    }
    if (address.isMulticastAddress()) {
        key += 4;
    }
    if (address.isLoopbackAddress()) {
        key += 3;
    }
    if (address.isLinkLocalAddress()) {
        key += 2;
    }
    if (address.isSiteLocalAddress()) {
        key += 1;
    }

    return key;
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:26,代码来源:NetworkUtils.java

示例2: read

import java.net.InetAddress; //导入方法依赖的package包/类
/**
 * Reads from ChannelBuffer and parses NextHop.
 *
 * @param cb ChannelBuffer
 * @return object of NextHop
 * @throws BgpParseException while parsing nexthop attribute
 */
public static NextHop read(ChannelBuffer cb) throws BgpParseException {
    Ip4Address nextHop;
    ChannelBuffer tempCb = cb.copy();
    Validation parseFlags = Validation.parseAttributeHeader(cb);

    if (cb.readableBytes() < parseFlags.getLength()) {
        Validation.validateLen(BgpErrorType.UPDATE_MESSAGE_ERROR, BgpErrorType.ATTRIBUTE_LENGTH_ERROR,
                parseFlags.getLength());
    }
    int len = parseFlags.isShort() ? parseFlags.getLength() + Constants.TYPE_AND_LEN_AS_SHORT : parseFlags
            .getLength() + Constants.TYPE_AND_LEN_AS_BYTE;
    ChannelBuffer data = tempCb.readBytes(len);
    if (parseFlags.getFirstBit() && !parseFlags.getSecondBit() && parseFlags.getThirdBit()) {
        throw new BgpParseException(BgpErrorType.UPDATE_MESSAGE_ERROR, BgpErrorType.ATTRIBUTE_FLAGS_ERROR, data);
    }

     InetAddress ipAddress = Validation.toInetAddress(parseFlags.getLength(), cb);
    if (ipAddress.isMulticastAddress()) {
        throw new BgpParseException("Multicast address is not supported");
    }

    nextHop = Ip4Address.valueOf(ipAddress);
    return new NextHop(nextHop);
}
 
开发者ID:shlee89,项目名称:athena,代码行数:32,代码来源:NextHop.java

示例3: doGetIpv4AddressFromNetworkInterface

import java.net.InetAddress; //导入方法依赖的package包/类
/**
 * docker环境中,有时无法通过InetAddress.getLocalHost()获取 ,会报unknown host Exception, system error
 * 此时,通过遍历网卡接口的方式规避,出来的数据不一定对
 */
private static void doGetIpv4AddressFromNetworkInterface() throws SocketException {
  Enumeration<NetworkInterface> iterNetwork = NetworkInterface.getNetworkInterfaces();

  while (iterNetwork.hasMoreElements()) {
    NetworkInterface network = iterNetwork.nextElement();

    if (!network.isUp() || network.isLoopback() || network.isVirtual()) {
      continue;
    }

    Enumeration<InetAddress> iterAddress = network.getInetAddresses();
    while (iterAddress.hasMoreElements()) {
      InetAddress address = iterAddress.nextElement();

      if (address.isAnyLocalAddress() || address.isLoopbackAddress() || address.isMulticastAddress()
          || Inet6Address.class.isInstance(address)) {
        continue;
      }

      if (Inet4Address.class.isInstance(address)) {
        LOGGER.info(
            "add network interface name:" + network.getName() + ",host address:" + address.getHostAddress());
        allInterfaceAddresses.put(network.getName(), address);
      }
    }
  }
}
 
开发者ID:apache,项目名称:incubator-servicecomb-java-chassis,代码行数:32,代码来源:NetUtils.java

示例4: createDatagramSocket

import java.net.InetAddress; //导入方法依赖的package包/类
public DatagramSocket createDatagramSocket(int port, InetAddress laddr)
        throws SocketException {

    if ( laddr.isMulticastAddress() ) {
        try {
            MulticastSocket ds = new MulticastSocket( port );
            ds.joinGroup( laddr );
            return ds;
        } catch (IOException e) {
            throw new SocketException( e.getLocalizedMessage() );
        }
    } else return new DatagramSocket(port, laddr);
}
 
开发者ID:YunlongYang,项目名称:LightSIP,代码行数:14,代码来源:DefaultNetworkLayer.java

示例5: getInetAddresses

import java.net.InetAddress; //导入方法依赖的package包/类
/**
 * @return a bunch of InetAddresses that are "real", ie, not virtual,
 *         loopback, multicast and are up.
 */
public static List<Pair<NetworkInterface, InetAddress>> getInetAddresses()
{
	List<Pair<NetworkInterface, InetAddress>> addrs = Lists.newArrayList();
	try
	{
		Enumeration<NetworkInterface> nis = NetworkInterface.getNetworkInterfaces();
		while( nis.hasMoreElements() )
		{
			NetworkInterface ni = nis.nextElement();
			if( !ni.isLoopback() && !ni.isVirtual() && ni.isUp() )
			{
				for( Enumeration<InetAddress> ias = ni.getInetAddresses(); ias.hasMoreElements(); )
				{
					InetAddress ia = ias.nextElement();
					if( !ia.isMulticastAddress() && !ia.isLoopbackAddress() )
					{
						addrs.add(new Pair<NetworkInterface, InetAddress>(ni, ia));
					}
				}
			}
		}
	}
	catch( SocketException e )
	{
		// Carry on
	}
	return addrs;
}
 
开发者ID:equella,项目名称:Equella,代码行数:33,代码来源:NetworkUtils.java

示例6: getAttribute

import java.net.InetAddress; //导入方法依赖的package包/类
public String getAttribute(String attName) {
  Object result = getAttributeObject(attName);
  if (result instanceof String) {
    return (String) result;
  }

  if (attName.equalsIgnoreCase(MEMBERSHIP_PORT_RANGE)) {
    int[] value = (int[]) result;
    return "" + value[0] + "-" + value[1];
  }

  if (result.getClass().isArray() && attName.startsWith("ssl-")) {
    return SystemAdmin.join((Object[]) result, ",");
  }

  if (result.getClass().isArray()) {
    return SystemAdmin.join((Object[]) result);
  }

  if (result instanceof InetAddress) {
    InetAddress addr = (InetAddress) result;
    String addrName = null;
    if (addr.isMulticastAddress() || !SocketCreator.resolve_dns) {
      addrName = addr.getHostAddress(); // on Windows getHostName on mcast addrs takes ~5 seconds
    } else {
      addrName = SocketCreator.getHostName(addr);
    }
    return addrName;
  }

  return result.toString();
}
 
开发者ID:ampool,项目名称:monarch,代码行数:33,代码来源:AbstractConfig.java

示例7: checkMcastAddress

import java.net.InetAddress; //导入方法依赖的package包/类
@ConfigAttributeChecker(name = MCAST_ADDRESS)
protected InetAddress checkMcastAddress(InetAddress value) {
  if (!value.isMulticastAddress()) {
    throw new IllegalArgumentException(
        LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_IT_WAS_NOT_A_MULTICAST_ADDRESS
            .toLocalizedString(new Object[] {MCAST_ADDRESS, value}));
  }
  return value;
}
 
开发者ID:ampool,项目名称:monarch,代码行数:10,代码来源:AbstractDistributionConfig.java

示例8: bgpIdValidation

import java.net.InetAddress; //导入方法依赖的package包/类
/**
 * Validates BGP ID.
 *
 * @param openMsg open message
 * @return true or false
 */
private boolean bgpIdValidation(BgpOpenMsg openMsg) {
    String openMsgBgpId = Ip4Address.valueOf(openMsg.getBgpId()).toString();

    InetAddress ipAddress;
    try {
        ipAddress = InetAddress.getByName(openMsgBgpId);
        if (ipAddress.isMulticastAddress()) {
            return false;
        }
    } catch (UnknownHostException e) {
        log.debug("InetAddress convertion failed");
    }
    return true;
}
 
开发者ID:shlee89,项目名称:athena,代码行数:21,代码来源:BgpChannelHandler.java

示例9: read

import java.net.InetAddress; //导入方法依赖的package包/类
/**
 * Reads the channel buffer and returns object of IPv6AddressTlv.
 *
 * @param cb channelBuffer
 * @param type address type
 * @return object of IPv6AddressTlv
 * @throws BgpParseException while parsing IPv6AddressTlv
 */
public static IPv6AddressTlv read(ChannelBuffer cb, short type) throws BgpParseException {
    InetAddress ipAddress = Validation.toInetAddress(LENGTH, cb);
    if (ipAddress.isMulticastAddress()) {
        throw new BgpParseException(BgpErrorType.UPDATE_MESSAGE_ERROR, (byte) 0, null);
    }
    Ip6Address address = Ip6Address.valueOf(ipAddress);
    return IPv6AddressTlv.of(address, type);
}
 
开发者ID:shlee89,项目名称:athena,代码行数:17,代码来源:IPv6AddressTlv.java

示例10: read

import java.net.InetAddress; //导入方法依赖的package包/类
/**
 * Reads the channel buffer and returns object of IPv4AddressTlv.
 *
 * @param cb channelBuffer
 * @param type address type
 * @return object of IPv4AddressTlv
 * @throws BgpParseException while parsing IPv4AddressTlv
 */
public static IPv4AddressTlv read(ChannelBuffer cb, short type) throws BgpParseException {
    InetAddress ipAddress = Validation.toInetAddress(LENGTH, cb);
    if (ipAddress.isMulticastAddress()) {
        throw new BgpParseException(BgpErrorType.UPDATE_MESSAGE_ERROR, (byte) 0, null);
    }
    Ip4Address address = Ip4Address.valueOf(ipAddress);
    return IPv4AddressTlv.of(address, type);
}
 
开发者ID:shlee89,项目名称:athena,代码行数:17,代码来源:IPv4AddressTlv.java

示例11: isGoodV4Address

import java.net.InetAddress; //导入方法依赖的package包/类
private static boolean isGoodV4Address(InetAddress address)
{
	return address instanceof Inet4Address &&
			!address.isAnyLocalAddress() &&
			!address.isLoopbackAddress() &&
			!address.isMulticastAddress();
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:8,代码来源:Util.java

示例12: isGoodV6Address

import java.net.InetAddress; //导入方法依赖的package包/类
private static boolean isGoodV6Address(InetAddress address)
{
	return address instanceof Inet6Address &&
			!address.isAnyLocalAddress() &&
			!address.isLoopbackAddress() &&
			!address.isMulticastAddress();
}
 
开发者ID:quqiangsheng,项目名称:abhot,代码行数:8,代码来源:Util.java

示例13: testRegionServerHostname

import java.net.InetAddress; //导入方法依赖的package包/类
@Test(timeout=120000)
public void testRegionServerHostname() throws Exception {
  final int NUM_MASTERS = 1;
  final int NUM_RS = 1;
  Enumeration<NetworkInterface> netInterfaceList = NetworkInterface.getNetworkInterfaces();

  while (netInterfaceList.hasMoreElements()) {
    NetworkInterface ni = netInterfaceList.nextElement();
    Enumeration<InetAddress> addrList = ni.getInetAddresses();
    // iterate through host addresses and use each as hostname
    while (addrList.hasMoreElements()) {
      InetAddress addr = addrList.nextElement();
      if (addr.isLoopbackAddress() || addr.isLinkLocalAddress() || addr.isMulticastAddress()) {
        continue;
      }
      String hostName = addr.getHostName();
      LOG.info("Found " + hostName + " on " + ni);
      
      TEST_UTIL.getConfiguration().set(HRegionServer.RS_HOSTNAME_KEY, hostName);
      TEST_UTIL.startMiniCluster(NUM_MASTERS, NUM_RS);
      try {
        ZooKeeperWatcher zkw = TEST_UTIL.getZooKeeperWatcher();
        List<String> servers = ZKUtil.listChildrenNoWatch(zkw, zkw.rsZNode);
        while (servers == null) {
          Threads.sleep(10);
        }
        assertTrue(servers.size() == NUM_RS);
        for (String server : servers) {
          assertTrue("From zookeeper: " + server + " hostname: " + hostName,
            server.startsWith(hostName.toLowerCase()+","));
        }
        zkw.close();
      } finally {
        TEST_UTIL.shutdownMiniCluster();
      }
    }
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:39,代码来源:TestRegionServerHostname.java


注:本文中的java.net.InetAddress.isMulticastAddress方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。