]> git.saurik.com Git - apple/mdnsresponder.git/blob - mDNSShared/Java/DNSSDRegistration.java
mDNSResponder-878.200.35.tar.gz
[apple/mdnsresponder.git] / mDNSShared / Java / DNSSDRegistration.java
1 /* -*- Mode: Java; tab-width: 4 -*-
2 *
3 * Copyright (c) 2004 Apple Computer, Inc. All rights reserved.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18
19 package com.apple.dnssd;
20
21
22 /** A tracking object for a registration created by {@link DNSSD#register}. */
23
24 public interface DNSSDRegistration extends DNSSDService
25 {
26 /** Get a reference to the primary TXT record of a registered service.<P>
27 The record can be updated by sending it an update() message.<P>
28
29 <P>
30 @return A {@link DNSRecord}.
31 If {@link DNSSDRegistration#stop} is called, the DNSRecord is also
32 invalidated and may not be used further.
33 */
34 DNSRecord getTXTRecord()
35 throws DNSSDException;
36
37 /** Add a record to a registered service.<P>
38 The name of the record will be the same as the registered service's name.<P>
39 The record can be updated or deregistered by sending it an update() or remove() message.<P>
40
41 @param flags
42 Currently unused, reserved for future use.
43 <P>
44 @param rrType
45 The type of the record (e.g. TXT, SRV, etc), as defined in nameser.h.
46 <P>
47 @param rData
48 The raw rdata to be contained in the added resource record.
49 <P>
50 @param ttl
51 The time to live of the resource record, in seconds.
52 <P>
53 @return A {@link DNSRecord} that may be passed to updateRecord() or removeRecord().
54 If {@link DNSSDRegistration#stop} is called, the DNSRecord is also
55 invalidated and may not be used further.
56 */
57 DNSRecord addRecord( int flags, int rrType, byte[] rData, int ttl)
58 throws DNSSDException;
59 }
60