PeerCastStation.FLV.RTMP.RTMPSourceConnection.GetConnectionInfo C# (CSharp) Method

GetConnectionInfo() public method

public GetConnectionInfo ( ) : ConnectionInfo
return PeerCastStation.Core.ConnectionInfo
    public override ConnectionInfo GetConnectionInfo()
    {
      ConnectionStatus status;
      switch (state) {
      case ConnectionState.Waiting:   status = ConnectionStatus.Connecting; break;
      case ConnectionState.Connected: status = ConnectionStatus.Connecting; break;
      case ConnectionState.Receiving: status = ConnectionStatus.Connected; break;
      case ConnectionState.Error:     status = ConnectionStatus.Error; break;
      default:                        status = ConnectionStatus.Idle; break;
      }
      IPEndPoint endpoint = null;
      if (connection!=null) {
        endpoint = connection.RemoteEndPoint;
      }
      return new ConnectionInfo(
        "RTMP Source",
        ConnectionType.Source,
        status,
        SourceUri.ToString(),
        endpoint,
        (endpoint!=null && endpoint.Address.IsSiteLocal()) ? RemoteHostStatus.Local : RemoteHostStatus.None,
        flvBuffer.Position,
        RecvRate,
        SendRate,
        null,
        null,
        clientName);
    }