]> git.meshlink.io Git - catta/blobdiff - avahi-sharp/ServiceResolver.cs
ignore some more files
[catta] / avahi-sharp / ServiceResolver.cs
index e94bd13bba53d85d49399c5212778d2729542ac6..4a6a8a068f3bff7ad57867b25b59823e06d06da9 100644 (file)
@@ -34,7 +34,7 @@ namespace Avahi
                                                     UInt16 port, IntPtr txt, LookupResultFlags flags,
                                                     IntPtr userdata);
 
-    public class ServiceResolver : IDisposable
+    public class ServiceResolver : ResolverBase, IDisposable
     {
         private IntPtr handle;
         private ServiceInfo currentInfo;
@@ -199,17 +199,17 @@ namespace Avahi
 
             info.Text = (byte[][]) txtlist.ToArray (typeof (byte[]));
             info.Flags = flags;
-            
-            if (revent == ResolverEvent.Found) {
+
+            switch (revent) {
+            case ResolverEvent.Found:
                 currentInfo = info;
 
                 foreach (ServiceInfoHandler handler in foundListeners)
                     handler (this, info);
-            } else {
-                currentInfo = ServiceInfo.Zero;
-                
-                foreach (EventHandler handler in timeoutListeners)
-                    handler (this, new EventArgs ());
+                break;
+            case ResolverEvent.Failure:
+                EmitFailure (client.LastError);
+                break;
             }
         }