use of org.minidns.source.NetworkDataSourceWithAccounting in project minidns by MiniDNS.
the class IterativeDNSSECTest method shouldRequireLessQueries.
@IntegrationTest
public static void shouldRequireLessQueries() throws IOException {
DNSSECClient normalCacheClient = getClient(CacheConfig.normal);
DNSSECMessage normalCacheResult = normalCacheClient.queryDnssec(DNSSEC_DOMAIN, RR_TYPE);
assertTrue(normalCacheResult.authenticData);
NetworkDataSourceWithAccounting normalCacheNdswa = NetworkDataSourceWithAccounting.from(normalCacheClient);
DNSSECClient extendedCacheClient = getClient(CacheConfig.extended);
DNSSECMessage extendedCacheResult = extendedCacheClient.queryDnssec(DNSSEC_DOMAIN, RR_TYPE);
assertTrue(extendedCacheResult.authenticData);
NetworkDataSourceWithAccounting extendedCacheNdswa = NetworkDataSourceWithAccounting.from(extendedCacheClient);
assertTrue(normalCacheNdswa.getStats().successfulQueries > extendedCacheNdswa.getStats().successfulQueries);
}
use of org.minidns.source.NetworkDataSourceWithAccounting in project minidns by MiniDNS.
the class IntegrationTestTools method getClient.
public static DNSSECClient getClient(CacheConfig cacheConfig) {
DNSCache cache;
switch(cacheConfig) {
case without:
cache = null;
break;
case normal:
cache = new LRUCache();
break;
case extended:
cache = new ExtendedLRUCache();
break;
case full:
cache = new FullLRUCache();
break;
default:
throw new IllegalStateException();
}
DNSSECClient client = new DNSSECClient(cache);
client.setDataSource(new NetworkDataSourceWithAccounting());
return client;
}
use of org.minidns.source.NetworkDataSourceWithAccounting in project minidns by MiniDNS.
the class MiniDNSStats method getStats.
public static StringBuilder getStats(AbstractDNSClient client) {
StringBuilder sb = new StringBuilder();
NetworkDataSourceWithAccounting ndswa = NetworkDataSourceWithAccounting.from(client);
if (ndswa != null) {
sb.append(ndswa.getStats().toString());
} else {
sb.append("Client is not using " + NetworkDataSourceWithAccounting.class.getSimpleName());
}
DNSCache dnsCache = client.getCache();
if (dnsCache != null) {
sb.append(dnsCache);
} else {
sb.append("Client is not using a Cache");
}
return sb;
}
Aggregations