use of org.xbill.DNS.Lookup in project ORCID-Source by ORCID.
the class OrcidDomainValidator method isValid.
public boolean isValid(String hostLocation) {
try {
Lookup lookup = new Lookup(hostLocation);
lookup.run();
int result = lookup.getResult();
if (Lookup.SUCCESSFUL == result) {
return true;
}
if (Lookup.HOST_NOT_FOUND == result || Lookup.TYPE_NOT_FOUND == result) {
return false;
}
LOGGER.warn("DNS is not OK, so validating in offline mode");
return standardDomainValidator.isValid(hostLocation);
} catch (TextParseException e) {
return false;
}
}
use of org.xbill.DNS.Lookup in project camel by apache.
the class DnsServiceDiscovery method getServices.
@Override
public List<ServiceDefinition> getServices(String name) {
final Lookup lookup = cache.computeIfAbsent(name, this::createLookup);
final Record[] records = lookup.run();
List<ServiceDefinition> services;
if (Objects.nonNull(records) && lookup.getResult() == Lookup.SUCCESSFUL) {
services = Arrays.stream(records).filter(SRVRecord.class::isInstance).map(SRVRecord.class::cast).sorted(COMPARATOR).map(record -> asService(name, record)).collect(Collectors.toList());
} else {
services = Collections.emptyList();
}
return services;
}
use of org.xbill.DNS.Lookup in project opennms by OpenNMS.
the class DnsMonitorIT method testDnsJavaQuadARecord.
@Test
public void testDnsJavaQuadARecord() throws IOException {
assumeTrue(!Boolean.getBoolean("skipIpv6Tests"));
final Lookup l = new Lookup("ipv6.example.com", Type.AAAA);
// make sure we use a temporary cache so don't get results from a previously cached query
// from another test
l.setCache(null);
final SimpleResolver resolver = new SimpleResolver("::1");
resolver.setPort(9153);
l.setResolver(resolver);
l.run();
System.out.println("result: " + l.getResult());
if (l.getResult() == Lookup.SUCCESSFUL) {
System.out.println(l.getAnswers()[0].rdataToString());
}
assertTrue(l.getResult() == Lookup.SUCCESSFUL);
}
use of org.xbill.DNS.Lookup in project opennms by OpenNMS.
the class DnsMonitorIT method testNoAnswer.
@Test
@JUnitDNSServer(port = 9153, zones = {})
public void testNoAnswer() throws Exception {
final Lookup l = new Lookup("example.com", Type.AAAA);
// make sure we use a temporary cache so don't get results from a previously cached query
// from another test
l.setCache(null);
final SimpleResolver resolver = new SimpleResolver("::1");
resolver.setPort(9153);
l.setResolver(resolver);
l.run();
// and NXRRSET record should be sent meaning that the server has no records for
// example.com at all. This results in a null answers. This is result 4 I think
System.out.println("result: " + l.getResult());
final Record[] answers = l.getAnswers();
assertNull(answers);
}
use of org.xbill.DNS.Lookup in project opennms by OpenNMS.
the class DnsUtilsTest method testOrderingOfLookups.
/**
* Make sure this test is FIRST.
*/
@Test
@Ignore
public void testOrderingOfLookups() throws Exception {
// String lookup = "www.opennms.org";
String lookup = "www.facebook.com";
Record[] fb = new Lookup(lookup, Type.AAAA).run();
fb = new Lookup(lookup, Type.A).run();
assertNotNull(fb);
}
Aggregations