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 */ getTXTRecord()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 */ addRecord( int flags, int rrType, byte[] rData, int ttl)57 DNSRecord addRecord( int flags, int rrType, byte[] rData, int ttl) 58 throws DNSSDException; 59 } 60 61