package com.limegroup.gnutella.statistics; /** * This class handles all statistics for connections. */ public class ConnectionStat extends AdvancedStatistic { /** * Make the constructor private so that only this class can construct * a <tt>ConnectionStat</tt> instances. */ private ConnectionStat() {} /** * Specialized class that increments the count of all connection * attempts. This class should be used by statistics that are * also connection attempts -- that way the total connections * attempt count will be automatically incremented. */ private static final class AllConnectionAttemptsStat extends ConnectionStat { public void incrementStat() { super.incrementStat(); ALL_CONNECTION_ATTEMPTS.incrementStat(); } } /** * <tt>Statistic</tt> for all Gnutella connection attempts made. */ public static final Statistic ALL_CONNECTION_ATTEMPTS = new ConnectionStat(); /** * <tt>Statistic</tt> for all Gnutella incoming connection attempts * made (connection attempts initiated from other hosts). */ public static final Statistic INCOMING_CONNECTION_ATTEMPTS = new AllConnectionAttemptsStat(); /** * <tt>Statistic</tt> for all Gnutella outgoing connection attempts * made (connection attempts initiated by us).. */ public static final Statistic OUTGOING_CONNECTION_ATTEMPTS = new AllConnectionAttemptsStat(); }