PeerCastStation.UI.PortMapperMonitor.OnTimer C# (CSharp) Метод

OnTimer() публичный Метод

public OnTimer ( ) : void
Результат void
    public void OnTimer()
    {
      lock (ports) {
        var current_ports = peerCast.OutputListeners
          .Where(listener  => (listener.GlobalOutputAccepts & OutputStreamType.All)!=0)
          .Select(listener => listener.LocalEndPoint.Port).ToArray();
        var added_ports    = current_ports.Except(ports).ToArray();
        var removed_ports  = ports.Except(current_ports).ToArray();
        var existing_ports = current_ports.Intersect(ports).ToArray();
        foreach (var port in removed_ports) {
          RemovePort(port);
        }
        foreach (var port in added_ports) {
          AddPort(port);
        }
        if (renewTimer.ElapsedMilliseconds>=60000) {
          foreach (var port in existing_ports) {
            RenewPort(port);
          }
          renewTimer.Restart();
        }
        ports = current_ports;
      }
    }