| // Copyright (c) 1999-2004 Brian Wellington (bwelling@xbill.org) |
| |
| package org.xbill.DNS; |
| |
| import java.io.*; |
| |
| /** |
| * Responsible Person Record - lists the mail address of a responsible person |
| * and a domain where TXT records are available. |
| * |
| * @author Tom Scola <tscola@research.att.com> |
| * @author Brian Wellington |
| */ |
| |
| public class RPRecord extends Record { |
| |
| private static final long serialVersionUID = 8124584364211337460L; |
| |
| private Name mailbox; |
| private Name textDomain; |
| |
| RPRecord() {} |
| |
| Record |
| getObject() { |
| return new RPRecord(); |
| } |
| |
| /** |
| * Creates an RP Record from the given data |
| * @param mailbox The responsible person |
| * @param textDomain The address where TXT records can be found |
| */ |
| public |
| RPRecord(Name name, int dclass, long ttl, Name mailbox, Name textDomain) { |
| super(name, Type.RP, dclass, ttl); |
| |
| this.mailbox = checkName("mailbox", mailbox); |
| this.textDomain = checkName("textDomain", textDomain); |
| } |
| |
| void |
| rrFromWire(DNSInput in) throws IOException { |
| mailbox = new Name(in); |
| textDomain = new Name(in); |
| } |
| |
| void |
| rdataFromString(Tokenizer st, Name origin) throws IOException { |
| mailbox = st.getName(origin); |
| textDomain = st.getName(origin); |
| } |
| |
| /** Converts the RP Record to a String */ |
| String |
| rrToString() { |
| StringBuffer sb = new StringBuffer(); |
| sb.append(mailbox); |
| sb.append(" "); |
| sb.append(textDomain); |
| return sb.toString(); |
| } |
| |
| /** Gets the mailbox address of the RP Record */ |
| public Name |
| getMailbox() { |
| return mailbox; |
| } |
| |
| /** Gets the text domain info of the RP Record */ |
| public Name |
| getTextDomain() { |
| return textDomain; |
| } |
| |
| void |
| rrToWire(DNSOutput out, Compression c, boolean canonical) { |
| mailbox.toWire(out, null, canonical); |
| textDomain.toWire(out, null, canonical); |
| } |
| |
| } |