Current File : //usr/share/lib/java/javadoc/dnssd/api/com/apple/dnssd/DNSSD.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>DNSSD</title>
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="DNSSD";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../com/apple/dnssd/package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../com/apple/dnssd/DNSRecord.html" title="interface in com.apple.dnssd"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/apple/dnssd/DNSSD.html" target="_top">Frames</a></li>
<li><a href="DNSSD.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.apple.dnssd</div>
<h2 title="Class DNSSD" class="title">Class DNSSD</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.apple.dnssd.DNSSD</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">DNSSD</span>
extends java.lang.Object</pre>
<div class="block">DNSSD provides access to DNS Service Discovery features of ZeroConf networking.<P>

        It is a factory class that is used to invoke registration and discovery-related
        operations. Most operations are non-blocking; clients are called back through an interface 
        with the result of an operation. Callbacks are made from a separate worker thread.<P>

        For example, in this program<P> 
        <PRE><CODE>
    class   MyClient implements BrowseListener {
        void    lookForWebServers() {
            myBrowser = DNSSD.browse("_http_.tcp", this);
        }
    
        public void serviceFound(DNSSDService browser, int flags, int ifIndex, 
                            String serviceName, String regType, String domain) {}
        ... 
    }</CODE></PRE>
        <CODE>MyClient.serviceFound()</CODE> would be called for every HTTP server discovered in the
        default browse domain(s).</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#ALL_INTERFACES">ALL_INTERFACES</a></span></code>
<div class="block">Pass for ifIndex to specify all available interfaces.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#BROWSE_DOMAINS">BROWSE_DOMAINS</a></span></code>
<div class="block">Set flag when calling enumerateDomains() to restrict results to domains recommended for browsing.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#DEFAULT">DEFAULT</a></span></code>
<div class="block">If flag is set in a <a href="../../../com/apple/dnssd/DomainListener.html" title="interface in com.apple.dnssd"><code>DomainListener</code></a> callback, indicates that the result is the default domain.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#LOCALHOST_ONLY">LOCALHOST_ONLY</a></span></code>
<div class="block">Pass for ifIndex to specify the localhost interface.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#MAX_DOMAIN_NAME">MAX_DOMAIN_NAME</a></span></code>
<div class="block">Maximum length, in bytes, of a domain name represented as an escaped C-String.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#MORE_COMING">MORE_COMING</a></span></code>
<div class="block">Flag indicates to a <a href="../../../com/apple/dnssd/BrowseListener.html" title="interface in com.apple.dnssd"><code>BrowseListener</code></a> that another result is
                queued.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#NO_AUTO_RENAME">NO_AUTO_RENAME</a></span></code>
<div class="block">If flag is set, a name conflict will trigger an exception when registering non-shared records.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#REGISTRATION_DOMAINS">REGISTRATION_DOMAINS</a></span></code>
<div class="block">Set flag when calling enumerateDomains() to restrict results to domains recommended for registration.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#SHARED">SHARED</a></span></code>
<div class="block">If flag is set, allow multiple records with this name on the network (e.g.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#UNIQUE">UNIQUE</a></span></code>
<div class="block">If flag is set, records with this name must be unique on the network (e.g.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#browse-int-int-java.lang.String-java.lang.String-com.apple.dnssd.BrowseListener-">browse</a></span>(int&nbsp;flags,
      int&nbsp;ifIndex,
      java.lang.String&nbsp;regType,
      java.lang.String&nbsp;domain,
      <a href="../../../com/apple/dnssd/BrowseListener.html" title="interface in com.apple.dnssd">BrowseListener</a>&nbsp;listener)</code>
<div class="block">Browse for instances of a service.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#browse-java.lang.String-com.apple.dnssd.BrowseListener-">browse</a></span>(java.lang.String&nbsp;regType,
      <a href="../../../com/apple/dnssd/BrowseListener.html" title="interface in com.apple.dnssd">BrowseListener</a>&nbsp;listener)</code>
<div class="block">Browse for instances of a service.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#constructFullName-java.lang.String-java.lang.String-java.lang.String-">constructFullName</a></span>(java.lang.String&nbsp;serviceName,
                 java.lang.String&nbsp;regType,
                 java.lang.String&nbsp;domain)</code>
<div class="block">Concatenate a three-part domain name (as provided to the listeners) into a 
                properly-escaped full domain name.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDRecordRegistrar.html" title="interface in com.apple.dnssd">DNSSDRecordRegistrar</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#createRecordRegistrar-com.apple.dnssd.RegisterRecordListener-">createRecordRegistrar</a></span>(<a href="../../../com/apple/dnssd/RegisterRecordListener.html" title="interface in com.apple.dnssd">RegisterRecordListener</a>&nbsp;listener)</code>
<div class="block">Create a <a href="../../../com/apple/dnssd/DNSSDRecordRegistrar.html" title="interface in com.apple.dnssd"><code>DNSSDRecordRegistrar</code></a> allowing efficient registration of 
                multiple individual records.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#enumerateDomains-int-int-com.apple.dnssd.DomainListener-">enumerateDomains</a></span>(int&nbsp;flags,
                int&nbsp;ifIndex,
                <a href="../../../com/apple/dnssd/DomainListener.html" title="interface in com.apple.dnssd">DomainListener</a>&nbsp;listener)</code>
<div class="block">Asynchronously enumerate domains available for browsing and registration.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#getIfIndexForName-java.lang.String-">getIfIndexForName</a></span>(java.lang.String&nbsp;ifName)</code>
<div class="block">Return the index of a named interface.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#getNameForIfIndex-int-">getNameForIfIndex</a></span>(int&nbsp;ifIndex)</code>
<div class="block">Return the canonical name of a particular interface index.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#queryRecord-int-int-java.lang.String-int-int-com.apple.dnssd.QueryListener-">queryRecord</a></span>(int&nbsp;flags,
           int&nbsp;ifIndex,
           java.lang.String&nbsp;serviceName,
           int&nbsp;rrtype,
           int&nbsp;rrclass,
           <a href="../../../com/apple/dnssd/QueryListener.html" title="interface in com.apple.dnssd">QueryListener</a>&nbsp;listener)</code>
<div class="block">Query for an arbitrary DNS record.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#reconfirmRecord-int-int-java.lang.String-int-int-byte:A-">reconfirmRecord</a></span>(int&nbsp;flags,
               int&nbsp;ifIndex,
               java.lang.String&nbsp;fullName,
               int&nbsp;rrtype,
               int&nbsp;rrclass,
               byte[]&nbsp;rdata)</code>
<div class="block">Instruct the daemon to verify the validity of a resource record that appears to 
                be out of date.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDRegistration.html" title="interface in com.apple.dnssd">DNSSDRegistration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#register-int-int-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-com.apple.dnssd.TXTRecord-com.apple.dnssd.RegisterListener-">register</a></span>(int&nbsp;flags,
        int&nbsp;ifIndex,
        java.lang.String&nbsp;serviceName,
        java.lang.String&nbsp;regType,
        java.lang.String&nbsp;domain,
        java.lang.String&nbsp;host,
        int&nbsp;port,
        <a href="../../../com/apple/dnssd/TXTRecord.html" title="class in com.apple.dnssd">TXTRecord</a>&nbsp;txtRecord,
        <a href="../../../com/apple/dnssd/RegisterListener.html" title="interface in com.apple.dnssd">RegisterListener</a>&nbsp;listener)</code>
<div class="block">Register a service, to be discovered via browse() and resolve() calls.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDRegistration.html" title="interface in com.apple.dnssd">DNSSDRegistration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#register-java.lang.String-java.lang.String-int-com.apple.dnssd.RegisterListener-">register</a></span>(java.lang.String&nbsp;serviceName,
        java.lang.String&nbsp;regType,
        int&nbsp;port,
        <a href="../../../com/apple/dnssd/RegisterListener.html" title="interface in com.apple.dnssd">RegisterListener</a>&nbsp;listener)</code>
<div class="block">Register a service, to be discovered via browse() and resolve() calls.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>static <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../com/apple/dnssd/DNSSD.html#resolve-int-int-java.lang.String-java.lang.String-java.lang.String-com.apple.dnssd.ResolveListener-">resolve</a></span>(int&nbsp;flags,
       int&nbsp;ifIndex,
       java.lang.String&nbsp;serviceName,
       java.lang.String&nbsp;regType,
       java.lang.String&nbsp;domain,
       <a href="../../../com/apple/dnssd/ResolveListener.html" title="interface in com.apple.dnssd">ResolveListener</a>&nbsp;listener)</code>
<div class="block">Resolve a service name discovered via browse() to a target host name, port number, and txt record.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="MORE_COMING">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MORE_COMING</h4>
<pre>public static final&nbsp;int MORE_COMING</pre>
<div class="block">Flag indicates to a <a href="../../../com/apple/dnssd/BrowseListener.html" title="interface in com.apple.dnssd"><code>BrowseListener</code></a> that another result is
                queued.  Applications should not update their UI to display browse
                results if the MORE_COMING flag is set; they will be called at least once
                more with the flag clear.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.MORE_COMING">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="DEFAULT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DEFAULT</h4>
<pre>public static final&nbsp;int DEFAULT</pre>
<div class="block">If flag is set in a <a href="../../../com/apple/dnssd/DomainListener.html" title="interface in com.apple.dnssd"><code>DomainListener</code></a> callback, indicates that the result is the default domain.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.DEFAULT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="NO_AUTO_RENAME">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>NO_AUTO_RENAME</h4>
<pre>public static final&nbsp;int NO_AUTO_RENAME</pre>
<div class="block">If flag is set, a name conflict will trigger an exception when registering non-shared records.<P> 
        A name must be explicitly specified when registering a service if this bit is set 
        (i.e. the default name may not not be used).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.NO_AUTO_RENAME">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SHARED">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SHARED</h4>
<pre>public static final&nbsp;int SHARED</pre>
<div class="block">If flag is set, allow multiple records with this name on the network (e.g. PTR records)
                when registering individual records on a <a href="../../../com/apple/dnssd/DNSSDRegistration.html" title="interface in com.apple.dnssd"><code>DNSSDRegistration</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.SHARED">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="UNIQUE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>UNIQUE</h4>
<pre>public static final&nbsp;int UNIQUE</pre>
<div class="block">If flag is set, records with this name must be unique on the network (e.g. SRV records).</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.UNIQUE">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="BROWSE_DOMAINS">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BROWSE_DOMAINS</h4>
<pre>public static final&nbsp;int BROWSE_DOMAINS</pre>
<div class="block">Set flag when calling enumerateDomains() to restrict results to domains recommended for browsing.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.BROWSE_DOMAINS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="REGISTRATION_DOMAINS">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>REGISTRATION_DOMAINS</h4>
<pre>public static final&nbsp;int REGISTRATION_DOMAINS</pre>
<div class="block">Set flag when calling enumerateDomains() to restrict results to domains recommended for registration.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.REGISTRATION_DOMAINS">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="MAX_DOMAIN_NAME">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MAX_DOMAIN_NAME</h4>
<pre>public static final&nbsp;int MAX_DOMAIN_NAME</pre>
<div class="block">Maximum length, in bytes, of a domain name represented as an escaped C-String.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.MAX_DOMAIN_NAME">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="ALL_INTERFACES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ALL_INTERFACES</h4>
<pre>public static final&nbsp;int ALL_INTERFACES</pre>
<div class="block">Pass for ifIndex to specify all available interfaces.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.ALL_INTERFACES">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="LOCALHOST_ONLY">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>LOCALHOST_ONLY</h4>
<pre>public static final&nbsp;int LOCALHOST_ONLY</pre>
<div class="block">Pass for ifIndex to specify the localhost interface.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../constant-values.html#com.apple.dnssd.DNSSD.LOCALHOST_ONLY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="browse-int-int-java.lang.String-java.lang.String-com.apple.dnssd.BrowseListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>browse</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a>&nbsp;browse(int&nbsp;flags,
                                  int&nbsp;ifIndex,
                                  java.lang.String&nbsp;regType,
                                  java.lang.String&nbsp;domain,
                                  <a href="../../../com/apple/dnssd/BrowseListener.html" title="interface in com.apple.dnssd">BrowseListener</a>&nbsp;listener)
                           throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Browse for instances of a service.<P> 

                Note: browsing consumes network bandwidth. Call <a href="../../../com/apple/dnssd/DNSSDService.html#stop--"><code>DNSSDService.stop()</code></a> when you have finished browsing.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - Currently ignored, reserved for future use.
                <P></dd>
<dd><code>ifIndex</code> - If non-zero, specifies the interface on which to browse for services
                                        (the index for a given interface is determined via the if_nametoindex()
                                        family of calls.)  Most applications will pass 0 to browse on all available
                                        interfaces.  Pass -1 to only browse for services provided on the local host.
                <P></dd>
<dd><code>regType</code> - The registration type being browsed for followed by the protocol, separated by a 
                                        dot (e.g. "_ftp._tcp"). The transport protocol must be "_tcp" or "_udp".
                <P></dd>
<dd><code>domain</code> - If non-null, specifies the domain on which to browse for services.
                                        Most applications will not specify a domain, instead browsing on the 
                                        default domain(s).
                <P></dd>
<dd><code>listener</code> - This object will get called when instances of the service are discovered (or disappear).
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd"><code>DNSSDService</code></a> that represents the active browse operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="browse-java.lang.String-com.apple.dnssd.BrowseListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>browse</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a>&nbsp;browse(java.lang.String&nbsp;regType,
                                  <a href="../../../com/apple/dnssd/BrowseListener.html" title="interface in com.apple.dnssd">BrowseListener</a>&nbsp;listener)
                           throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Browse for instances of a service. Use default flags, ifIndex and domain.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>regType</code> - The registration type being browsed for followed by the protocol, separated by a 
                                        dot (e.g. "_ftp._tcp"). The transport protocol must be "_tcp" or "_udp".
                <P></dd>
<dd><code>listener</code> - This object will get called when instances of the service are discovered (or disappear).
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd"><code>DNSSDService</code></a> that represents the active browse operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="resolve-int-int-java.lang.String-java.lang.String-java.lang.String-com.apple.dnssd.ResolveListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resolve</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a>&nbsp;resolve(int&nbsp;flags,
                                   int&nbsp;ifIndex,
                                   java.lang.String&nbsp;serviceName,
                                   java.lang.String&nbsp;regType,
                                   java.lang.String&nbsp;domain,
                                   <a href="../../../com/apple/dnssd/ResolveListener.html" title="interface in com.apple.dnssd">ResolveListener</a>&nbsp;listener)
                            throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Resolve a service name discovered via browse() to a target host name, port number, and txt record.<P> 
                
                Note: Applications should NOT use resolve() solely for txt record monitoring - use 
                queryRecord() instead, as it is more efficient for this task.<P>
                
                Note: When the desired results have been returned, the client MUST terminate the resolve by 
                calling <a href="../../../com/apple/dnssd/DNSSDService.html#stop--"><code>DNSSDService.stop()</code></a>.<P>

                Note: resolve() behaves correctly for typical services that have a single SRV record and
                a single TXT record (the TXT record may be empty.)  To resolve non-standard services with 
                multiple SRV or TXT records, use queryRecord().<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - Currently ignored, reserved for future use.
                <P></dd>
<dd><code>ifIndex</code> - The interface on which to resolve the service.  The client should
                                        pass the interface on which the serviceName was discovered (i.e. 
                                        the ifIndex passed to the serviceFound() callback)
                                        or 0 to resolve the named service on all available interfaces.
                <P></dd>
<dd><code>serviceName</code> - The servicename to be resolved.
                <P></dd>
<dd><code>regType</code> - The registration type being resolved followed by the protocol, separated by a 
                                        dot (e.g. "_ftp._tcp").  The transport protocol must be "_tcp" or "_udp". 
                <P></dd>
<dd><code>domain</code> - The domain on which the service is registered, i.e. the domain passed
                                        to the serviceFound() callback.
                <P></dd>
<dd><code>listener</code> - This object will get called when the service is resolved.
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd"><code>DNSSDService</code></a> that represents the active resolve operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="register-int-int-java.lang.String-java.lang.String-java.lang.String-java.lang.String-int-com.apple.dnssd.TXTRecord-com.apple.dnssd.RegisterListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>register</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDRegistration.html" title="interface in com.apple.dnssd">DNSSDRegistration</a>&nbsp;register(int&nbsp;flags,
                                         int&nbsp;ifIndex,
                                         java.lang.String&nbsp;serviceName,
                                         java.lang.String&nbsp;regType,
                                         java.lang.String&nbsp;domain,
                                         java.lang.String&nbsp;host,
                                         int&nbsp;port,
                                         <a href="../../../com/apple/dnssd/TXTRecord.html" title="class in com.apple.dnssd">TXTRecord</a>&nbsp;txtRecord,
                                         <a href="../../../com/apple/dnssd/RegisterListener.html" title="interface in com.apple.dnssd">RegisterListener</a>&nbsp;listener)
                                  throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Register a service, to be discovered via browse() and resolve() calls.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - Possible values are: NO_AUTO_RENAME.
                <P></dd>
<dd><code>ifIndex</code> - If non-zero, specifies the interface on which to register the service
                                        (the index for a given interface is determined via the if_nametoindex()
                                        family of calls.)  Most applications will pass 0 to register on all 
                                        available interfaces.  Pass -1 to register a service only on the local 
                                        machine (service will not be visible to remote hosts).
                <P></dd>
<dd><code>serviceName</code> - If non-null, specifies the service name to be registered.  
                                        Applications need not specify a name, in which case the 
                                        computer name is used (this name is communicated to the client via 
                                        the serviceRegistered() callback).
                <P></dd>
<dd><code>regType</code> - The registration type being registered followed by the protocol, separated by a 
                                        dot (e.g. "_ftp._tcp").  The transport protocol must be "_tcp" or "_udp". 
                <P></dd>
<dd><code>domain</code> - If non-null, specifies the domain on which to advertise the service.
                                        Most applications will not specify a domain, instead automatically 
                                        registering in the default domain(s).
                <P></dd>
<dd><code>host</code> - If non-null, specifies the SRV target host name.  Most applications
                                        will not specify a host, instead automatically using the machine's
                                        default host name(s).  Note that specifying a non-null host does NOT 
                                        create an address record for that host - the application is responsible 
                                        for ensuring that the appropriate address record exists, or creating it
                                        via <a href="../../../com/apple/dnssd/DNSSDRegistration.html#addRecord-int-int-byte:A-int-"><code>DNSSDRegistration.addRecord(int, int, byte[], int)</code></a>.
                <P></dd>
<dd><code>port</code> - The port on which the service accepts connections.  Pass 0 for a 
                                        "placeholder" service (i.e. a service that will not be discovered by 
                                        browsing, but will cause a name conflict if another client tries to 
                                        register that same name.)  Most clients will not use placeholder services.
                <P></dd>
<dd><code>txtRecord</code> - The txt record rdata.  May be null.  Note that a non-null txtRecord 
                                        MUST be a properly formatted DNS TXT record, i.e. &lt;length byte&gt; &lt;data&gt; 
                                        &lt;length byte&gt; &lt;data&gt; ...
                <P></dd>
<dd><code>listener</code> - This object will get called when the service is registered.
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDRegistration.html" title="interface in com.apple.dnssd"><code>DNSSDRegistration</code></a> that controls the active registration.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="register-java.lang.String-java.lang.String-int-com.apple.dnssd.RegisterListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>register</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDRegistration.html" title="interface in com.apple.dnssd">DNSSDRegistration</a>&nbsp;register(java.lang.String&nbsp;serviceName,
                                         java.lang.String&nbsp;regType,
                                         int&nbsp;port,
                                         <a href="../../../com/apple/dnssd/RegisterListener.html" title="interface in com.apple.dnssd">RegisterListener</a>&nbsp;listener)
                                  throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Register a service, to be discovered via browse() and resolve() calls. Use default flags, ifIndex, domain, host and txtRecord.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>serviceName</code> - If non-null, specifies the service name to be registered.  
                                        Applications need not specify a name, in which case the 
                                        computer name is used (this name is communicated to the client via 
                                        the serviceRegistered() callback).
                <P></dd>
<dd><code>regType</code> - The registration type being registered followed by the protocol, separated by a 
                                        dot (e.g. "_ftp._tcp").  The transport protocol must be "_tcp" or "_udp". 
                <P></dd>
<dd><code>port</code> - The port on which the service accepts connections.  Pass 0 for a 
                                        "placeholder" service (i.e. a service that will not be discovered by 
                                        browsing, but will cause a name conflict if another client tries to 
                                        register that same name.)  Most clients will not use placeholder services.
                <P></dd>
<dd><code>listener</code> - This object will get called when the service is registered.
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDRegistration.html" title="interface in com.apple.dnssd"><code>DNSSDRegistration</code></a> that controls the active registration.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="createRecordRegistrar-com.apple.dnssd.RegisterRecordListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createRecordRegistrar</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDRecordRegistrar.html" title="interface in com.apple.dnssd">DNSSDRecordRegistrar</a>&nbsp;createRecordRegistrar(<a href="../../../com/apple/dnssd/RegisterRecordListener.html" title="interface in com.apple.dnssd">RegisterRecordListener</a>&nbsp;listener)
                                                  throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Create a <a href="../../../com/apple/dnssd/DNSSDRecordRegistrar.html" title="interface in com.apple.dnssd"><code>DNSSDRecordRegistrar</code></a> allowing efficient registration of 
                multiple individual records.<P> 
                <P></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDRecordRegistrar.html" title="interface in com.apple.dnssd"><code>DNSSDRecordRegistrar</code></a> that can be used to register records.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="queryRecord-int-int-java.lang.String-int-int-com.apple.dnssd.QueryListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryRecord</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a>&nbsp;queryRecord(int&nbsp;flags,
                                       int&nbsp;ifIndex,
                                       java.lang.String&nbsp;serviceName,
                                       int&nbsp;rrtype,
                                       int&nbsp;rrclass,
                                       <a href="../../../com/apple/dnssd/QueryListener.html" title="interface in com.apple.dnssd">QueryListener</a>&nbsp;listener)
                                throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Query for an arbitrary DNS record.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - Possible values are: MORE_COMING.
                <P></dd>
<dd><code>ifIndex</code> - If non-zero, specifies the interface on which to issue the query
                                        (the index for a given interface is determined via the if_nametoindex()
                                        family of calls.)  Passing 0 causes the name to be queried for on all 
                                        interfaces.  Passing -1 causes the name to be queried for only on the
                                        local host.
                <P></dd>
<dd><code>serviceName</code> - The full domain name of the resource record to be queried for.
                <P></dd>
<dd><code>rrtype</code> - The numerical type of the resource record to be queried for (e.g. PTR, SRV, etc)
                                        as defined in nameser.h.
                <P></dd>
<dd><code>rrclass</code> - The class of the resource record, as defined in nameser.h 
                                        (usually 1 for the Internet class).
                <P></dd>
<dd><code>listener</code> - This object will get called when the query completes.
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd"><code>DNSSDService</code></a> that controls the active query.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="enumerateDomains-int-int-com.apple.dnssd.DomainListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enumerateDomains</h4>
<pre>public static&nbsp;<a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd">DNSSDService</a>&nbsp;enumerateDomains(int&nbsp;flags,
                                            int&nbsp;ifIndex,
                                            <a href="../../../com/apple/dnssd/DomainListener.html" title="interface in com.apple.dnssd">DomainListener</a>&nbsp;listener)
                                     throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Asynchronously enumerate domains available for browsing and registration.<P> 
        
                Currently, the only domain returned is "local.", but other domains will be returned in future.<P>
                
                The enumeration MUST be cancelled by calling <a href="../../../com/apple/dnssd/DNSSDService.html#stop--"><code>DNSSDService.stop()</code></a> when no more domains
                are to be found.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - Possible values are: BROWSE_DOMAINS, REGISTRATION_DOMAINS.
                <P></dd>
<dd><code>ifIndex</code> - If non-zero, specifies the interface on which to look for domains.
                                        (the index for a given interface is determined via the if_nametoindex()
                                        family of calls.)  Most applications will pass 0 to enumerate domains on 
                                        all interfaces.  
                <P></dd>
<dd><code>listener</code> - This object will get called when domains are found.
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../com/apple/dnssd/DNSSDService.html" title="interface in com.apple.dnssd"><code>DNSSDService</code></a> that controls the active enumeration.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="constructFullName-java.lang.String-java.lang.String-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>constructFullName</h4>
<pre>public static&nbsp;java.lang.String&nbsp;constructFullName(java.lang.String&nbsp;serviceName,
                                                 java.lang.String&nbsp;regType,
                                                 java.lang.String&nbsp;domain)
                                          throws <a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></pre>
<div class="block">Concatenate a three-part domain name (as provided to the listeners) into a 
                properly-escaped full domain name. Note that strings passed to listeners are 
                ALREADY ESCAPED where necessary.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>serviceName</code> - The service name - any dots or slashes must NOT be escaped.
                                        May be null (to construct a PTR record name, e.g. "_ftp._tcp.apple.com").
                <P></dd>
<dd><code>regType</code> - The registration type followed by the protocol, separated by a dot (e.g. "_ftp._tcp"). 
                <P></dd>
<dd><code>domain</code> - The domain name, e.g. "apple.com".  Any literal dots or backslashes must be escaped.
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The full domain name.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dd><code><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd">DNSSDException</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="reconfirmRecord-int-int-java.lang.String-int-int-byte:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reconfirmRecord</h4>
<pre>public static&nbsp;void&nbsp;reconfirmRecord(int&nbsp;flags,
                                   int&nbsp;ifIndex,
                                   java.lang.String&nbsp;fullName,
                                   int&nbsp;rrtype,
                                   int&nbsp;rrclass,
                                   byte[]&nbsp;rdata)</pre>
<div class="block">Instruct the daemon to verify the validity of a resource record that appears to 
                be out of date. (e.g. because tcp connection to a service's target failed.) <P> 
                
                Causes the record to be flushed from the daemon's cache (as well as all other 
                daemons' caches on the network) if the record is determined to be invalid.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>flags</code> - Currently unused, reserved for future use.
                <P></dd>
<dd><code>ifIndex</code> - If non-zero, specifies the interface on which to reconfirm the record
                                        (the index for a given interface is determined via the if_nametoindex()
                                        family of calls.)  Passing 0 causes the name to be reconfirmed on all 
                                        interfaces.  Passing -1 causes the name to be reconfirmed only on the
                                        local host.
                <P></dd>
<dd><code>fullName</code> - The resource record's full domain name.
                <P></dd>
<dd><code>rrtype</code> - The resource record's type (e.g. PTR, SRV, etc) as defined in nameser.h.
                <P></dd>
<dd><code>rrclass</code> - The class of the resource record, as defined in nameser.h (usually 1).
                <P></dd>
<dd><code>rdata</code> - The raw rdata of the resource record.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="getNameForIfIndex-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNameForIfIndex</h4>
<pre>public static&nbsp;java.lang.String&nbsp;getNameForIfIndex(int&nbsp;ifIndex)</pre>
<div class="block">Return the canonical name of a particular interface index.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ifIndex</code> - A valid interface index. Must not be ALL_INTERFACES.
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The name of the interface, which should match java.net.NetworkInterface.getName().</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
<a name="getIfIndexForName-java.lang.String-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getIfIndexForName</h4>
<pre>public static&nbsp;int&nbsp;getIfIndexForName(java.lang.String&nbsp;ifName)</pre>
<div class="block">Return the index of a named interface.<P></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ifName</code> - A valid interface name. An example is java.net.NetworkInterface.getName().
                <P></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The interface index.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.SecurityException</code> - If a security manager is present and denies <tt>RuntimePermission("getDNSSDInstance")</tt>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>RuntimePermission</code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../com/apple/dnssd/package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../com/apple/dnssd/DNSRecord.html" title="interface in com.apple.dnssd"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../com/apple/dnssd/DNSSDException.html" title="class in com.apple.dnssd"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/apple/dnssd/DNSSD.html" target="_top">Frames</a></li>
<li><a href="DNSSD.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>