Пример #1
0
        /**
         * Create a {@link DnsSDRegistrator} that registers services in the
         * registration domain found by the specified {@link DnsSDDomainEnumerator}.
         * @param domainEnumerator the domain enumerator to query for registration domains.
         * @return a new {@link DnsSDRegistrator}.
         * @throws DnsSDException if the registrator can't be created.
         */
        public DnsSDRegistrator createRegistrator(DnsSDDomainEnumerator domainEnumerator)
        {
            String registeringDomain = domainEnumerator.getDefaultRegisteringDomain();

            if (registeringDomain == null)
            {
                ICollection <String> domains = domainEnumerator.getRegisteringDomains();
                if (domains.Count > 0)
                {
                    registeringDomain = domains.GetEnumerator().Current;
                }
                else
                {
                    throw new DnsSDException("Failed to find any registering domain");
                }
            }
            return(createRegistrator(registeringDomain));
        }
Пример #2
0
        /**
         * Create a {@link DnsSDBrowser} that finds services in the
         * browsing domains found by the specified {@link DnsSDDomainEnumerator}.
         * @param domainEnumerator the domain enumerator to query for browser domains.
         * @return a new {@link DnsSDBrowser}.
         */
        public DnsSDBrowser createBrowser(DnsSDDomainEnumerator domainEnumerator)
        {
            ICollection <String> list = domainEnumerator.getBrowsingDomains();

            if (list.Count == 0)
            {
                String bd = domainEnumerator.getDefaultBrowsingDomain();
                if (bd != null)
                {
                    list = new List <string>();
                    list.Add(bd);
                }
                else
                {
                    list = domainEnumerator.getLegacyBrowsingDomains();
                }
            }
            return(createBrowser(list));
        }