/** * Get the number of non-null entries in a {@link List} * * @param list the list * @return the number of non-null entries */ public static long countNotNull(List<?> list) { return (list.size() - countNull(list)); }
/** * Get the percentage of null entries in a {@link List} of {@link BigDecimal} values * @param list the {@link List} of {@link BigDecimal} values * @return the percentage of null values as a {@link BigDecimal} value */ private static BigDecimal percentNullBigDecimal(List<BigDecimal> list) { if (list.size() > 0) { return new BigDecimal(countNull(list)).divide(new BigDecimal(list.size()), 16, BigDecimal.ROUND_HALF_EVEN).multiply(new BigDecimal(100)); } else { return null; } }
if (CollectionMath.countNull(responseTimes) >= failurePingCount) { LOG.debug("Service {} on interface {} is down, but continuing to gather latency data", svc.getSvcName(), svc.getIpAddr()); serviceStatus = PollStatus.unavailable("the failure ping count (" + failurePingCount + ") was reached"); returnval.put("ping" + (i + 1), responseTimes.get(i)); returnval.put("loss", CollectionMath.countNull(responseTimes)); returnval.put("median", CollectionMath.median(responseTimes)); returnval.put(PollStatus.PROPERTY_RESPONSE_TIME, CollectionMath.average(responseTimes));