modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/nhttp/util/LatencyView.java [228:280]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        } else {
            for (int i = 0; i < samples; i++) {
                sum += array[array.length - 1 - i];
            }
        }

        if (samples == 0) {
            return 0.0;
        }
        return sum/samples;
    }

    private class ShortTermDataCollector implements Runnable {
        @Override
        public void run() {
            long latency = lastLatency.get();

            // calculate all time average latency
            int size = latencyDataQueue.size();
            if (size > 0) {
                long sum = 0;
                for (int i = 0; i < size; i++) {
                    sum += latencyDataQueue.poll();
                }
                allTimeAvgLatency = (allTimeAvgLatency * count + sum)/(count + size);
                count = count + size;
            }

            if (shortTermLatencyDataQueue.size() == 0 && latency == 0) {
                // we haven't started collecting data yet - skip ahead...
                return;
            }

            // take a sample for the short term latency calculation
            if (shortTermLatencyDataQueue.size() == SAMPLES_PER_MINUTE * 15) {
                shortTermLatencyDataQueue.remove();
            }
            shortTermLatencyDataQueue.offer(latency);
        }
    }

    private class LongTermDataCollector implements Runnable {
        @Override
        public void run() {
            long latency = lastLatency.get();
            if (longTermLatencyDataQueue.size() == 0 && latency == 0) {
                return;
            }

            if (longTermLatencyDataQueue.size() == SAMPLES_PER_HOUR * 24) {
                longTermLatencyDataQueue.remove();
            }
            longTermLatencyDataQueue.offer(latency);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/LatencyView.java [225:277]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        } else {
            for (int i = 0; i < samples; i++) {
                sum += array[array.length - 1 - i];
            }
        }

        if (samples == 0) {
            return 0.0;
        }
        return sum/samples;
    }

    private class ShortTermDataCollector implements Runnable {
        @Override
        public void run() {
            long latency = lastLatency.get();

            // calculate all time average latency
            int size = latencyDataQueue.size();
            if (size > 0) {
                long sum = 0;
                for (int i = 0; i < size; i++) {
                    sum += latencyDataQueue.poll();
                }
                allTimeAvgLatency = (allTimeAvgLatency * count + sum)/(count + size);
                count = count + size;
            }

            if (shortTermLatencyDataQueue.size() == 0 && latency == 0) {
                // we haven't started collecting data yet - skip ahead...
                return;
            }

            // take a sample for the short term latency calculation
            if (shortTermLatencyDataQueue.size() == SAMPLES_PER_MINUTE * 15) {
                shortTermLatencyDataQueue.remove();
            }
            shortTermLatencyDataQueue.offer(latency);
        }
    }

    private class LongTermDataCollector implements Runnable {
        @Override
        public void run() {
            long latency = lastLatency.get();
            if (longTermLatencyDataQueue.size() == 0 && latency == 0) {
                return;
            }

            if (longTermLatencyDataQueue.size() == SAMPLES_PER_HOUR * 24) {
                longTermLatencyDataQueue.remove();
            }
            longTermLatencyDataQueue.offer(latency);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



