PeerCastStation.WPF.CoreSettings.SettingViewModel.CheckPortAsync C# (CSharp) Method

CheckPortAsync() private method

private CheckPortAsync ( ) : Task
return Task
    private async Task<PortCheckStatus> CheckPortAsync()
    {
      var port_checker = pecaApp.Plugins.GetPlugin<PeerCastStation.UI.PCPPortCheckerPlugin>();
      if (port_checker==null) return PortCheckStatus.Failed;
      var result = await port_checker.CheckAsync();
      if (!result.Success) {
        return PortCheckStatus.Failed;
      }
      else {
        var status = PortCheckStatus.Closed;
        foreach (var port in ports) {
          port.IsOpen = result.Ports.Contains(port.Port);
          if (port.IsOpen.HasValue && port.IsOpen.Value) {
            status = PortCheckStatus.Opened;
          }
        }
        return status;
      }
    }