Esempio n. 1
0
        public void Resolve()
        {
            if (disposed)
            {
                throw new InvalidOperationException("The service has been disposed and cannot be resolved. " +
                                                    " Perhaps this service was removed?");
            }

            // DBusManager.Bus.TrapSignals ();

            lock (this) {
                if (resolver != null)
                {
                    throw new InvalidOperationException("The service is already running a resolve operation");
                }

                ObjectPath path = DBusManager.Server.ServiceResolverNew(AvahiInterface, AvahiProtocol,
                                                                        Name ?? String.Empty, RegType ?? String.Empty, ReplyDomain ?? String.Empty,
                                                                        AvahiProtocol, LookupFlags.None);

                resolver = DBusManager.GetObject <IAvahiServiceResolver> (path);
            }

            resolver.Failure += OnResolveFailure;
            resolver.Found   += OnResolveFound;

            // DBusManager.Bus.UntrapSignals ();
        }
 private void DisposeResolver()
 {
     lock (this) {
         if (resolver != null)
         {
             resolver.Failure -= OnResolveFailure;
             resolver.Found   -= OnResolveFound;
             resolver.Free();
             resolver = null;
         }
     }
 }
Esempio n. 3
0
        private void DisposeResolver()
        {
            lock (this) {
                IAvahiServiceResolver resolver = this.resolver;

                if (resolver != null)
                {
                    this.resolver     = null;
                    resolver.Failure -= OnResolveFailure;
                    resolver.Found   -= OnResolveFound;
                    resolver.Free();
                }
            }
        }
Esempio n. 4
0
 private void DisposeResolver()
 {
     lock (this) {
         if (resolver != null) {
             resolver.Failure -= OnResolveFailure;
             resolver.Found -= OnResolveFound;
             resolver.Free ();
             resolver = null;
         }
     }
 }
Esempio n. 5
0
        public void Resolve()
        {
            if (disposed) {
                throw new InvalidOperationException ("The service has been disposed and cannot be resolved. " +
                    " Perhaps this service was removed?");
            }

            DBusManager.Bus.TrapSignals ();

            lock (this) {
                if (resolver != null) {
                    throw new InvalidOperationException ("The service is already running a resolve operation");
                }

                ObjectPath path = DBusManager.Server.ServiceResolverNew (AvahiInterface, AvahiProtocol,
                    Name ?? String.Empty, RegType ?? String.Empty, ReplyDomain ?? String.Empty,
                    AvahiProtocol, LookupFlags.None);

                resolver = DBusManager.GetObject<IAvahiServiceResolver> (path);
            }

            resolver.Failure += OnResolveFailure;
            resolver.Found += OnResolveFound;

            DBusManager.Bus.UntrapSignals ();
        }