xref: /titanic_51/usr/src/lib/libdns_sd/java/com/apple/dnssd/DNSRecord.java (revision 5ffb0c9b03b5149ff4f5821a62be4a52408ada2a)
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 /**
23 	Reference to a record returned by {@link DNSSDRegistration#addRecord}.<P>
24 
25 	Note: client is responsible for serializing access to these objects if
26 	they are shared between concurrent threads.
27 */
28 
29 public interface	DNSRecord
30 {
31 	/** Update a registered resource record.<P>
32 		The record must either be the primary txt record of a service registered via DNSSD.register(),
33 		or a record added to a registered service via addRecord().<P>
34 
35 		@param	flags
36 					Currently unused, reserved for future use.
37 		<P>
38 		@param	rData
39 					The new rdata to be contained in the updated resource record.
40 		<P>
41 		@param	ttl
42 					The time to live of the updated resource record, in seconds.
43 	*/
44 	void			update( int flags, byte[] rData, int ttl)
45 	throws DNSSDException;
46 
47 	/** Remove a registered resource record.<P>
48 	*/
49 	void			remove()
50 	throws DNSSDException;
51 }
52 
53