Esempio n. 1
0
    public virtual void  onReceive(LBMSourceStatistics stats)
    {
        System.Console.Error.Write("\nSource statistics received");
        System.Console.Error.Write(" from " + stats.getApplicationSourceId());
        System.Console.Error.Write(" at " + stats.getSender().ToString());
        System.Console.Error.WriteLine(", sent " + stats.getTimestamp().ToLocalTime().ToString());
        System.Console.Error.WriteLine("Source: " + stats.source());
        System.Console.Error.WriteLine("Transport: " + stats.typeName());
        switch (stats.type())
        {
        case LBM.TRANSPORT_STAT_TCP:
            System.Console.Error.WriteLine("\tClients       : " + stats.numberOfClients());
            System.Console.Error.WriteLine("\tBytes buffered: " + stats.bytesBuffered());
            break;

        case LBM.TRANSPORT_STAT_LBTRM:
            System.Console.Error.WriteLine("\tLBT-RM datagrams sent                                 : " + stats.messagesSent());
            System.Console.Error.WriteLine("\tLBT-RM datagram bytes sent                            : " + stats.bytesSent());
            System.Console.Error.WriteLine("\tLBT-RM datagrams in transmission window               : " + stats.transmissionWindowMessages());
            System.Console.Error.WriteLine("\tLBT-RM datagram bytes in transmission window          : " + stats.transmissionWindowBytes());
            System.Console.Error.WriteLine("\tLBT-RM NAK packets received                           : " + stats.nakPacketsReceived());
            System.Console.Error.WriteLine("\tLBT-RM NAKs received                                  : " + stats.naksReceived());
            System.Console.Error.WriteLine("\tLBT-RM NAKs ignored                                   : " + stats.naksIgnored());
            System.Console.Error.WriteLine("\tLBT-RM NAKs shed                                      : " + stats.naksShed());
            System.Console.Error.WriteLine("\tLBT-RM NAKs ignored (retransmit delay)                : " + stats.naksIgnoredRetransmitDelay());
            System.Console.Error.WriteLine("\tLBT-RM retransmission datagrams sent                  : " + stats.retransmissionsSent());
            System.Console.Error.WriteLine("\tLBT-RM retransmission datagram bytes sent             : " + stats.retransmissionBytesSent());
            System.Console.Error.WriteLine("\tLBT-RM datagrams queued by rate control               : " + stats.messagesQueued());
            System.Console.Error.WriteLine("\tLBT-RM retransmission datagrams queued by rate control: " + stats.retransmissionsQueued());
            break;

        case LBM.TRANSPORT_STAT_LBTRU:
            System.Console.Error.WriteLine("\tLBT-RU datagrams sent                    : " + stats.messagesSent());
            System.Console.Error.WriteLine("\tLBT-RU datagram bytes sent               : " + stats.bytesSent());
            System.Console.Error.WriteLine("\tLBT-RU NAK packets received              : " + stats.nakPacketsReceived());
            System.Console.Error.WriteLine("\tLBT-RU NAKs received                     : " + stats.naksReceived());
            System.Console.Error.WriteLine("\tLBT-RU NAKs ignored                      : " + stats.naksIgnored());
            System.Console.Error.WriteLine("\tLBT-RU NAKs shed                         : " + stats.naksShed());
            System.Console.Error.WriteLine("\tLBT-RU NAKs ignored (retransmit delay)   : " + stats.naksIgnoredRetransmitDelay());
            System.Console.Error.WriteLine("\tLBT-RU retransmission datagrams sent     : " + stats.retransmissionsSent());
            System.Console.Error.WriteLine("\tLBT-RU retransmission datagram bytes sent: " + stats.retransmissionBytesSent());
            System.Console.Error.WriteLine("\tClients                                  : " + stats.numberOfClients());
            break;

        case LBM.TRANSPORT_STAT_LBTIPC:
            System.Console.Error.WriteLine("\tClients                    :" + stats.numberOfClients());
            System.Console.Error.WriteLine("\tLBT-IPC datagrams sent     :" + stats.messagesSent());
            System.Console.Error.WriteLine("\tLBT-IPC datagram bytes sent:" + stats.bytesSent());
            break;

        case LBM.TRANSPORT_STAT_LBTSMX:
            System.Console.Error.WriteLine("\tClients                    :" + stats.numberOfClients());
            System.Console.Error.WriteLine("\tLBT-SMX datagrams sent     :" + stats.messagesSent());
            System.Console.Error.WriteLine("\tLBT-SMX datagram bytes sent:" + stats.bytesSent());
            break;

        case LBM.TRANSPORT_STAT_LBTRDMA:
            System.Console.Error.WriteLine("\tClients                    :" + stats.numberOfClients());
            System.Console.Error.WriteLine("\tLBT-RDMA datagrams sent     :" + stats.messagesSent());
            System.Console.Error.WriteLine("\tLBT-RDMA datagram bytes sent:" + stats.bytesSent());
            break;

        case LBM.TRANSPORT_STAT_BROKER:
            System.Console.Error.WriteLine("\tBROKER messages sent       : " + stats.messagesSent());
            System.Console.Error.WriteLine("\tBROKER message bytes sent  : " + stats.bytesSent());
            break;

        default:
            System.Console.Error.WriteLine("Error: Unknown transport type received:" + stats.type());
            break;
        }
        _recycler.doneWithSourceStatistics(stats);
    }