private void Search()
        {
            currentSearchTokenSource = new CancellationTokenSource();

            var appPreferences = dispatcher.Dispatch(AppPreferencesActions.GetAppPreferences());

            foreach (var ipAddress in appPreferences.GetIpAddressRange())
            {
                try
                {
                    if (pinger.IsResponding(ipAddress) && fadeCandyPinger.IsFadecandyDevice(ipAddress))
                    {
                        var hostName = pinger.GetHostName(ipAddress);
                        discoveredDevices.Enqueue(new DiscoveredDevice
                        {
                            Name      = hostName,
                            IpAddress = ipAddress
                        });
                    }
                }
                catch (Exception ex)
                {
                    logger.LogException(ex);
                }
            }
        }
 public bool IsOnline(Device device)
 {
     return(pinger.IsResponding(device.IpAddress) && fadeCandyPinger.IsFadecandyDevice(device.IpAddress));
 }