private void NotifyListenersOfNewService(ServiceDescription service)
        {
            var serviceIds = ServiceIdsForFilter(service.ServiceFilter);
            ServiceDescription newService = null;

            foreach (var serviceId in serviceIds)
            {
                var _newService = service.Clone();

                _newService.ServiceId = serviceId;

                //if (newService == null)
                //    newService = _newService;

                foreach (var listener in serviceListeners)
                {
                    listener.OnServiceAdded(this, _newService);
                }
            }
        }
        private void NotifyListenersOfLostService(ServiceDescription service)
        {
            var serviceIds = ServiceIdsForFilter(service.ServiceFilter);

            foreach (var serviceId in serviceIds)
            {
                var newService = service.Clone();
                newService.ServiceId = serviceId;

                foreach (var listener in serviceListeners)
                {
                    listener.OnServiceRemoved(this, newService);
                }
            }
        }