diff --git a/src/kademlia/KadStatistician.java b/src/kademlia/KadStatistician.java index 1a8231d..aca1d24 100644 --- a/src/kademlia/KadStatistician.java +++ b/src/kademlia/KadStatistician.java @@ -61,6 +61,11 @@ public interface KadStatistician */ public int numContentLookups(); + /** + * @return How many content lookups have failed. + */ + public int numFailedContentLookups(); + /** * @return The total time spent on content lookups. */ diff --git a/src/kademlia/Statistician.java b/src/kademlia/Statistician.java index f2c7573..b8f27f4 100644 --- a/src/kademlia/Statistician.java +++ b/src/kademlia/Statistician.java @@ -21,7 +21,7 @@ public class Statistician implements KadStatistician private long bootstrapTime; /* Content lookup operation timing & route length */ - private int numContentLookups; + private int numContentLookups, numFailedContentLookups; private long totalContentLookupTime; private long totalRouteLength; @@ -76,9 +76,16 @@ public class Statistician implements KadStatistician @Override public void addContentLookup(long time, int routeLength, boolean isSuccessful) { - this.numContentLookups++; - this.totalContentLookupTime += time; - this.totalRouteLength += routeLength; + if (isSuccessful) + { + this.numContentLookups++; + this.totalContentLookupTime += time; + this.totalRouteLength += routeLength; + } + else + { + this.numFailedContentLookups++; + } } @Override @@ -87,6 +94,12 @@ public class Statistician implements KadStatistician return this.numContentLookups; } + @Override + public int numFailedContentLookups() + { + return this.numFailedContentLookups; + } + @Override public long totalContentLookupTime() {