host = address; return new AddressHolder(host, port, scopeId);
private Map<String, String> createAddressToDomainMap(TcpIpConfig tcpIpConfig) { if (!tcpIpConfig.isEnabled()) { return Collections.emptyMap(); } Collection<String> possibleAddresses = TcpIpJoiner.getConfigurationMembers(config); // LinkedHashMap is to guarantee order Map<String, String> addressDomainMap = createLinkedHashMap(possibleAddresses.size()); for (String possibleAddress : possibleAddresses) { String addressHolder = AddressUtil.getAddressHolder(possibleAddress).getAddress(); if (AddressUtil.isIpAddress(addressHolder)) { // there may be a domain registered for this address if (!addressDomainMap.containsKey(addressHolder)) { addressDomainMap.put(addressHolder, null); } } else { try { Collection<String> addresses = resolveDomainNames(addressHolder); for (String address : addresses) { addressDomainMap.put(address, addressHolder); } } catch (UnknownHostException e) { logger.warning("Cannot resolve hostname: '" + addressHolder + "'"); } } } return addressDomainMap; }
@Override public void writeResponse(ManagementCenterService mcs, JsonObject root) throws Exception { Map<Address, Future<Object>> futures = MapUtil.createHashMap(targets.size()); for (String address : targets) { AddressUtil.AddressHolder addressHolder = AddressUtil.getAddressHolder(address); Address targetAddress = new Address(addressHolder.getAddress(), addressHolder.getPort()); futures.put(targetAddress, mcs.callOnAddress(targetAddress, new ScriptExecutorOperation(engine, script))); } JsonObject responseJson = new JsonObject(); for (Map.Entry<Address, Future<Object>> entry : futures.entrySet()) { Address address = entry.getKey(); Future<Object> future = entry.getValue(); try { addSuccessResponse(responseJson, address, prettyPrint(future.get())); } catch (ExecutionException e) { addErrorResponse(responseJson, address, e.getCause()); } catch (InterruptedException e) { addErrorResponse(responseJson, address, e); Thread.currentThread().interrupt(); } } root.add("result", responseJson); }
AddressHolder addressHolder = AddressUtil.getAddressHolder(possibleMember); try { boolean portIsDefined = addressHolder.getPort() != -1 || !networkConfig.isPortAutoIncrement(); int count = portIsDefined ? 1 : maxPortTryCount; int port = addressHolder.getPort() != -1 ? addressHolder.getPort() : networkConfig.getPort(); AddressMatcher addressMatcher = null; try { addressMatcher = AddressUtil.getAddressMatcher(addressHolder.getAddress()); } catch (InvalidAddressException ignore) { ignore(ignore); } else { matchedAddresses = Collections.singleton(addressHolder.getAddress()); final String host = addressHolder.getAddress(); final InterfacesConfig interfaces = networkConfig.getInterfaces(); if (interfaces.isEnabled()) { logger.warning("Cannot resolve hostname '" + addressHolder.getAddress() + "'. Please make sure host is valid and reachable."); if (logger.isFineEnabled()) {
AddressHolder addressHolder = AddressUtil.getAddressHolder(possibleMember); try { boolean portIsDefined = addressHolder.getPort() != -1 || !networkConfig.isPortAutoIncrement(); int count = portIsDefined ? 1 : maxPortTryCount; int port = addressHolder.getPort() != -1 ? addressHolder.getPort() : networkConfig.getPort(); AddressMatcher addressMatcher = null; try { addressMatcher = AddressUtil.getAddressMatcher(addressHolder.getAddress()); } catch (InvalidAddressException ignore) { ignore(ignore); } else { matchedAddresses = Collections.singleton(addressHolder.getAddress()); final String host = addressHolder.getAddress(); final InterfacesConfig interfaces = networkConfig.getInterfaces(); if (interfaces.isEnabled()) { logger.warning("Cannot resolve hostname '" + addressHolder.getAddress() + "'. Please make sure host is valid and reachable."); if (logger.isFineEnabled()) {
private Address getRequiredMemberAddress() { TcpIpConfig tcpIpConfig = config.getNetworkConfig().getJoin().getTcpIpConfig(); String host = tcpIpConfig.getRequiredMember(); try { AddressHolder addressHolder = AddressUtil.getAddressHolder(host, config.getNetworkConfig().getPort()); if (AddressUtil.isIpAddress(addressHolder.getAddress())) { return new Address(addressHolder.getAddress(), addressHolder.getPort()); } InterfacesConfig interfaces = config.getNetworkConfig().getInterfaces(); if (interfaces.isEnabled()) { InetAddress[] inetAddresses = InetAddress.getAllByName(addressHolder.getAddress()); if (inetAddresses.length > 1) { for (InetAddress inetAddress : inetAddresses) { if (AddressUtil.matchAnyInterface(inetAddress.getHostAddress(), interfaces.getInterfaces())) { return new Address(inetAddress, addressHolder.getPort()); } } } else if (AddressUtil.matchAnyInterface(inetAddresses[0].getHostAddress(), interfaces.getInterfaces())) { return new Address(addressHolder.getAddress(), addressHolder.getPort()); } } else { return new Address(addressHolder.getAddress(), addressHolder.getPort()); } } catch (final Exception e) { logger.warning(e); } return null; }
private Address getRequiredMemberAddress() { TcpIpConfig tcpIpConfig = config.getNetworkConfig().getJoin().getTcpIpConfig(); String host = tcpIpConfig.getRequiredMember(); try { AddressHolder addressHolder = AddressUtil.getAddressHolder(host, config.getNetworkConfig().getPort()); if (AddressUtil.isIpAddress(addressHolder.getAddress())) { return new Address(addressHolder.getAddress(), addressHolder.getPort()); } InterfacesConfig interfaces = config.getNetworkConfig().getInterfaces(); if (interfaces.isEnabled()) { InetAddress[] inetAddresses = InetAddress.getAllByName(addressHolder.getAddress()); if (inetAddresses.length > 1) { for (InetAddress inetAddress : inetAddresses) { if (AddressUtil.matchAnyInterface(inetAddress.getHostAddress(), interfaces.getInterfaces())) { return new Address(inetAddress, addressHolder.getPort()); } } } else if (AddressUtil.matchAnyInterface(inetAddresses[0].getHostAddress(), interfaces.getInterfaces())) { return new Address(addressHolder.getAddress(), addressHolder.getPort()); } } else { return new Address(addressHolder.getAddress(), addressHolder.getPort()); } } catch (final Exception e) { logger.warning(e); } return null; }
host = address; return new AddressHolder(host, port, scopeId);
@Override public void writeResponse(ManagementCenterService mcs, JsonObject root) throws Exception { Map<Address, Future<Object>> futures = MapUtil.createHashMap(targets.size()); for (String address : targets) { AddressUtil.AddressHolder addressHolder = AddressUtil.getAddressHolder(address); Address targetAddress = new Address(addressHolder.getAddress(), addressHolder.getPort()); futures.put(targetAddress, mcs.callOnAddress(targetAddress, new ScriptExecutorOperation(engine, script))); } JsonObject responseJson = new JsonObject(); for (Map.Entry<Address, Future<Object>> entry : futures.entrySet()) { Address address = entry.getKey(); Future<Object> future = entry.getValue(); try { addSuccessResponse(responseJson, address, prettyPrint(future.get())); } catch (ExecutionException e) { addErrorResponse(responseJson, address, e.getCause()); } catch (InterruptedException e) { addErrorResponse(responseJson, address, e); Thread.currentThread().interrupt(); } } root.add("result", responseJson); }
private Map<String, String> createAddressToDomainMap(TcpIpConfig tcpIpConfig) { if (!tcpIpConfig.isEnabled()) { return Collections.emptyMap(); } Collection<String> possibleAddresses = TcpIpJoiner.getConfigurationMembers(config); // LinkedHashMap is to guarantee order Map<String, String> addressDomainMap = createLinkedHashMap(possibleAddresses.size()); for (String possibleAddress : possibleAddresses) { String addressHolder = AddressUtil.getAddressHolder(possibleAddress).getAddress(); if (AddressUtil.isIpAddress(addressHolder)) { // there may be a domain registered for this address if (!addressDomainMap.containsKey(addressHolder)) { addressDomainMap.put(addressHolder, null); } } else { try { Collection<String> addresses = resolveDomainNames(addressHolder); for (String address : addresses) { addressDomainMap.put(address, addressHolder); } } catch (UnknownHostException e) { logger.warning("Cannot resolve hostname: '" + addressHolder + "'"); } } } return addressDomainMap; }
private AddressDefinition getPublicAddress(int port) throws UnknownHostException { String address = config.getProperty("hazelcast.local.publicAddress"); if (address == null) { address = config.getNetworkConfig().getPublicAddress(); } if (address != null) { address = address.trim(); if ("127.0.0.1".equals(address) || "localhost".equals(address)) { return pickLoopbackAddress(address, port); } else { // allow port to be defined in same string in the form of <host>:<port>, e.g. 10.0.0.0:1234 AddressUtil.AddressHolder holder = AddressUtil.getAddressHolder(address, port); return new AddressDefinition(holder.getAddress(), holder.getPort(), InetAddress.getByName(holder.getAddress())); } } return null; }
private AddressDefinition getPublicAddress(int port) throws UnknownHostException { String address = config.getProperty("hazelcast.local.publicAddress"); if (address == null) { address = config.getNetworkConfig().getPublicAddress(); } if (address != null) { address = address.trim(); if ("127.0.0.1".equals(address) || "localhost".equals(address)) { return pickLoopbackAddress(address, port); } else { // allow port to be defined in same string in the form of <host>:<port>, e.g. 10.0.0.0:1234 AddressUtil.AddressHolder holder = AddressUtil.getAddressHolder(address, port); return new AddressDefinition(holder.getAddress(), holder.getPort(), InetAddress.getByName(holder.getAddress())); } } return null; }
private Address createAddress(String hostname) throws IOException { AddressUtil.AddressHolder addressHolder = AddressUtil.getAddressHolder(hostname); String scopedHostName = AddressHelper.getScopedHostName(addressHolder); return new Address(scopedHostName, addressHolder.getPort()); }
public static String getScopedHostName(AddressHolder addressHolder) { return addressHolder.getScopeId() != null ? addressHolder.getAddress() + '%' + addressHolder.getScopeId() : addressHolder.getAddress(); }
public static Addresses getSocketAddresses(String address) { AddressHolder addressHolder = AddressUtil.getAddressHolder(address, -1); String scopedAddress = getScopedHostName(addressHolder); int port = addressHolder.getPort(); int maxPortTryCount = 1; if (port == -1) { maxPortTryCount = MAX_PORT_TRIES; } return getPossibleSocketAddresses(port, scopedAddress, maxPortTryCount); }
public static String getScopedHostName(AddressHolder addressHolder) { return addressHolder.getScopeId() != null ? addressHolder.getAddress() + '%' + addressHolder.getScopeId() : addressHolder.getAddress(); }
public static Collection<Address> getSocketAddresses(String address) { AddressHolder addressHolder = AddressUtil.getAddressHolder(address, -1); String scopedAddress = getScopedHostName(addressHolder); int port = addressHolder.getPort(); int maxPortTryCount = 1; if (port == -1) { maxPortTryCount = MAX_PORT_TRIES; } return getPossibleSocketAddresses(port, scopedAddress, maxPortTryCount); }
private Address createAddress(String hostname) throws IOException { AddressUtil.AddressHolder addressHolder = AddressUtil.getAddressHolder(hostname); String scopedHostName = AddressHelper.getScopedHostName(addressHolder); return new Address(scopedHostName, addressHolder.getPort()); }