package com.limegroup.gnutella.statistics; /** * This class contains a type-safe enumeration of statistics for handshaking */ public class HandshakingStat extends AdvancedStatistic { /** * Make the constructor private so that only this class can construct * a <tt>HandshakingStat</tt> instances. */ private HandshakingStat() {} /** * Specialized class for recording Gnutella connection rejections for * outgoing handshakes. */ private static class OutgoingServerReject extends HandshakingStat { public void incrementStat() { super.incrementStat(); OUTGOING_SERVER_REJECT.incrementStat(); } } /** * Statstic for an outgoing rejected connection to a leaf if we're * a leaf. */ public static final Statistic LEAF_OUTGOING_REJECT_LEAF = new HandshakingStat(); /** * Statistic for an outgoing rejected connection to a not-good * Ultrapeer if we're a leaf. */ public static final Statistic LEAF_OUTGOING_REJECT_OLD_UP = new HandshakingStat(); /** * Statistic for an outgoing accepted connection to anything * if we're a leaf. */ public static final Statistic LEAF_OUTGOING_ACCEPT = new HandshakingStat(); /** * Statistic for an incoming rejected connection if we're a leaf. */ public static final Statistic LEAF_INCOMING_REJECT = new HandshakingStat(); /** * Statistic for an incoming accepted connection if we're a leaf. */ public static final Statistic LEAF_INCOMING_ACCEPT = new HandshakingStat(); /** * Statistic for an outgoing rejected connection to an ultrapeer * because we didn't have enough room if we're an ultrapeer. */ public static final Statistic UP_OUTGOING_REJECT_FULL = new HandshakingStat(); /** * Statistic for an outgoing guided connection to an ultrapeer. */ public static final Statistic UP_OUTGOING_GUIDANCE_FOLLOWED = new HandshakingStat(); /** * Statistic for an outgoing guided connection to an ultrapeer * that gave us guidance, but we ignored it and stayed an ultrapeer */ public static final Statistic UP_OUTGOING_GUIDANCE_IGNORED = new HandshakingStat(); /** * Statistic for an outgoing connection to an ultrapeer that did * not give us guidance and we accepted. */ public static final Statistic UP_OUTGOING_ACCEPT = new HandshakingStat(); /** * Statistic for an incoming crawler connection. */ public static final Statistic INCOMING_CRAWLER = new HandshakingStat(); /** * Statistic for an incoming rejected connection to an ultrapeer * by a leaf. */ public static final Statistic UP_INCOMING_REJECT_LEAF = new HandshakingStat(); /** * Statistic for an incoming accepted connection to an ultrapeer * by a leaf. */ public static final Statistic UP_INCOMING_ACCEPT_LEAF = new HandshakingStat(); /** * Statistic for an incoming connection we're guiding to become * a leaf. */ public static final Statistic UP_INCOMING_GUIDED = new HandshakingStat(); /** * Statistic for an incoming accepted connection by another * ultrapeer. */ public static final Statistic UP_INCOMING_ACCEPT_UP = new HandshakingStat(); /** * Statistic for an incoming rejected connection because * there was no room for either an ultrapeer or a leaf. */ public static final Statistic UP_INCOMING_REJECT_NO_ROOM_LEAF = new HandshakingStat(); /** * Statistic for an incoming rejected connection because * we wanted them to become a supernode but had no room * for a supernode. */ public static final Statistic UP_INCOMING_REJECT_NO_ROOM_UP = new HandshakingStat(); /** * Statistic for a bad connect string returned from the remote host for an * outgoing connection. */ public static final Statistic OUTGOING_BAD_CONNECT = new HandshakingStat(); /** * Statistic for when the remote host rejected our outgoing connection * attempt. */ public static final Statistic OUTGOING_SERVER_REJECT = new HandshakingStat(); /** * Statistic for when the remote host sent an unknown response to an * outgoing connection attempt. */ public static final Statistic OUTGOING_SERVER_UNKNOWN = new HandshakingStat(); /** * Statistic for when we rejected the connection to the remote host on the * final state of the handshake. */ public static final Statistic OUTGOING_CLIENT_REJECT = new HandshakingStat(); /** * Statistic for when we sent an unknown status code to the server on an * outgoing connection attempt. */ public static final Statistic OUTGOING_CLIENT_UNKNOWN = new HandshakingStat(); /** * Statistic for successful outgoing connections. */ public static final Statistic SUCCESSFUL_OUTGOING = new HandshakingStat(); /** * Statistic for when we reject an incoming connection. */ public static final Statistic INCOMING_CLIENT_REJECT = new HandshakingStat(); /** * Statistic for when we send an unknown response to an incoming connection. */ public static final Statistic INCOMING_CLIENT_UNKNOWN = new HandshakingStat(); /** * Statistic for an unknown incoming connection string from a remote host. */ public static final Statistic INCOMING_BAD_CONNECT = new HandshakingStat(); /** * Statistic for successful incoming connections. */ public static final Statistic SUCCESSFUL_INCOMING = new HandshakingStat(); /** * Statistic for unknown responses from the server on incoming connections. */ public static final Statistic INCOMING_SERVER_UNKNOWN = new HandshakingStat(); /** * Statistic for when the handshake does not conclude in any standard state. */ public static final Statistic INCOMING_NO_CONCLUSION = new HandshakingStat(); public static final Statistic OUTGOING_LIMEWIRE_ULTRAPEER_REJECT = new OutgoingServerReject(); public static final Statistic OUTGOING_LIMEWIRE_LEAF_REJECT = new OutgoingServerReject(); public static final Statistic OUTGOING_OTHER_ULTRAPEER_REJECT = new OutgoingServerReject(); public static final Statistic OUTGOING_OTHER_LEAF_REJECT = new OutgoingServerReject(); }