static HostResolver create(HeliosClient client) throws InterruptedException, ExecutionException { final ResolverConfig currentConfig = ResolverConfig.getCurrentConfig(); final Name[] path; if (currentConfig != null) { final Name[] possiblePath = currentConfig.searchPath(); if (possiblePath != null) { path = possiblePath; } else { path = EMPTY_PATH; } } else { path = EMPTY_PATH; } return new HostResolver(Sets.newHashSet(client.listHosts().get()), path); }
protected void storeDNSRecord(final CrawlURI curi, final String dnsName, final CrawlHost targetHost, final Record[] rrecordSet) { // Get TTL and IP info from the first A record (there may be // multiple, e.g. www.washington.edu) then update the CrawlServer ARecord arecord = getFirstARecord(rrecordSet); if (arecord == null) { throw new NullPointerException("Got null arecord for " + dnsName); } targetHost.setIP(arecord.getAddress(), arecord.getTTL()); try { recordDNS(curi, rrecordSet); curi.setFetchStatus(S_DNS_SUCCESS); curi.setDNSServerIPLabel(ResolverConfig.getCurrentConfig().server()); } catch (IOException e) { logger.log(Level.SEVERE, "Failed store of DNS Record for " + curi.toString(), e); setUnresolvable(curi, targetHost); } }
/** * Constructor */ public LdapPublicCertUtilImpl(){ String[] configedServers = ResolverConfig.getCurrentConfig().servers(); if (configedServers != null) { this.servers.addAll(Arrays.asList(configedServers)); } }
public ResolverConfig() { if (findProperty()) return; if (findSunJVM()) return; if (servers == null || searchlist == null) { String OS = System.getProperty("os.name"); if (OS.indexOf("Windows") != -1) { if (OS.indexOf("95") != -1 || OS.indexOf("98") != -1 || OS.indexOf("ME") != -1) find95(); else findNT(); } else if (OS.indexOf("NetWare") != -1) findNetware(); else findUnix(); } }
ResolverConfig.refresh(); ExtendedResolver resolver; try { Lookup.setDefaultSearchPath(ResolverConfig.getCurrentConfig() .searchPath()); if (ResolverConfig.getCurrentConfig().servers() != null) { for (String server : ResolverConfig.getCurrentConfig() .servers()) { message.append(server); message.append(" ");
/** * Looks in the system properties to find servers and a search path. * Servers are defined by dns.server=server1,server2... * The search path is defined by dns.search=domain1,domain2... */ private boolean findProperty() { String s, prop; List lserver = new ArrayList(0); List lsearch = new ArrayList(0); StringTokenizer st; prop = System.getProperty("dns.server"); if (prop != null) { st = new StringTokenizer(prop, ","); while (st.hasMoreTokens()) addServer(st.nextToken(), lserver); } prop = System.getProperty("dns.search"); if (prop != null) { st = new StringTokenizer(prop, ","); while (st.hasMoreTokens()) addSearch(st.nextToken(), lsearch); } configureFromLists(lserver, lsearch); return (servers != null && searchlist != null); }
public static synchronized void refreshDefault() { try { defaultResolver = new ExtendedResolver(); } catch (UnknownHostException e) { throw new RuntimeException("Failed to initialize resolver"); } defaultSearchPath = ResolverConfig.getCurrentConfig().searchPath(); defaultCaches = new HashMap(); defaultNdots = ResolverConfig.getCurrentConfig().ndots(); }
if (autodiscover) { LOGGER.info("Autodiscovery is enabled - trying to discover your system's DNS Servers"); String[] serversArray = ResolverConfig.getCurrentConfig().servers(); if (serversArray != null) { for (String aServersArray : serversArray) { Name[] systemSearchPath = ResolverConfig.getCurrentConfig().searchPath(); if (systemSearchPath != null && systemSearchPath.length > 0) { sPaths.addAll(Arrays.asList(systemSearchPath));
StringTokenizer st = new StringTokenizer(line); addServer(st.nextToken(), lserver); continue; if (lsearch.isEmpty()) addSearch(st.nextToken(), lsearch); addSearch(st.nextToken(), lsearch); String token = st.nextToken(); if (token.startsWith("ndots:")) { lndots = parseNdots(token); configureFromLists(lserver, lsearch); configureNdots(lndots);
/** Gets the current configuration */ public static void refresh() { ResolverConfig newConfig = new ResolverConfig(); synchronized (ResolverConfig.class) { currentConfig = newConfig; } }
configureFromLists(lserver, lsearch);
public static void setServers(String[] servers) { if (servers == null || servers.length == 0) { String[] configedServers = ResolverConfig.getCurrentConfig().servers(); if (configedServers != null) { dnsServers.addAll(Arrays.asList(configedServers)); } } else { dnsServers.clear(); dnsServers.addAll(Arrays.asList(servers)); } }
public ResolverConfig() { if (findProperty()) return; if (findSunJVM()) return; if (servers == null || searchlist == null) { String OS = System.getProperty("os.name"); String vendor = System.getProperty("java.vendor"); if (OS.indexOf("Windows") != -1) { if (OS.indexOf("95") != -1 || OS.indexOf("98") != -1 || OS.indexOf("ME") != -1) find95(); else findNT(); } else if (OS.indexOf("NetWare") != -1) { findNetware(); } else if (vendor.indexOf("Android") != -1) { findAndroid(); } else { findUnix(); } } }
/** * Looks in the system properties to find servers and a search path. * Servers are defined by dns.server=server1,server2... * The search path is defined by dns.search=domain1,domain2... */ private boolean findProperty() { String prop; List lserver = new ArrayList(0); List lsearch = new ArrayList(0); StringTokenizer st; prop = System.getProperty("dns.server"); if (prop != null) { st = new StringTokenizer(prop, ","); while (st.hasMoreTokens()) addServer(st.nextToken(), lserver); } prop = System.getProperty("dns.search"); if (prop != null) { st = new StringTokenizer(prop, ","); while (st.hasMoreTokens()) addSearch(st.nextToken(), lsearch); } configureFromLists(lserver, lsearch); return (servers != null && searchlist != null); }
public static synchronized void refreshDefault() { try { defaultResolver = new ExtendedResolver(); } catch (UnknownHostException e) { throw new RuntimeException("Failed to initialize resolver"); } defaultSearchPath = ResolverConfig.getCurrentConfig().searchPath(); defaultCaches = new HashMap(); defaultNdots = ResolverConfig.getCurrentConfig().ndots(); }
if (autodiscover) { LOGGER.info("Autodiscovery is enabled - trying to discover your system's DNS Servers"); String[] serversArray = ResolverConfig.getCurrentConfig().servers(); if (serversArray != null) { for (String aServersArray : serversArray) { Name[] systemSearchPath = ResolverConfig.getCurrentConfig().searchPath(); if (systemSearchPath != null && systemSearchPath.length > 0) { sPaths.addAll(Arrays.asList(systemSearchPath));
StringTokenizer st = new StringTokenizer(line); addServer(st.nextToken(), lserver); continue; if (lsearch.isEmpty()) addSearch(st.nextToken(), lsearch); addSearch(st.nextToken(), lsearch); String token = st.nextToken(); if (token.startsWith("ndots:")) { lndots = parseNdots(token); configureFromLists(lserver, lsearch); configureNdots(lndots);
/** Gets the current configuration */ public static synchronized void refresh() { currentConfig = new ResolverConfig(); }
configureFromLists(lserver, lsearch); } catch ( Exception e ) {
/** * Creates a proxy using the provided servers and port for delegating requests. * @param servers A collections of IP4 addresses (as strings) that the proxy will delegate request to. * @param port The IP port to use when calling the proxy DNS server. */ public ProxyDNSStore(Collection<String> servers, int port) { if (servers == null || servers.size() == 0) { String[] configedServers = ResolverConfig.getCurrentConfig().servers(); if (configedServers != null) { this.servers = configedServers; } else this.servers = null; } else { this.servers = new String[servers.size()]; servers.toArray(this.servers); } this.port = port; }