1d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen// Copyright (c) 1999-2004 Brian Wellington (bwelling@xbill.org)
2d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
3d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chenpackage org.xbill.DNS;
4d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
5d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen/**
6d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen * CNAME Record  - maps an alias to its real name
7d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen *
8d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen * @author Brian Wellington
9d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen */
10d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
11d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chenpublic class CNAMERecord extends SingleCompressedNameBase {
12d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
13d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chenprivate static final long serialVersionUID = -4020373886892538580L;
14d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
15d7955ce24d294fb2014c59d11fca184471056f44Shuyi ChenCNAMERecord() {}
16d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
17d7955ce24d294fb2014c59d11fca184471056f44Shuyi ChenRecord
18d7955ce24d294fb2014c59d11fca184471056f44Shuyi ChengetObject() {
19d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen	return new CNAMERecord();
20d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen}
21d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
22d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen/**
23d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen * Creates a new CNAMERecord with the given data
24d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen * @param alias The name to which the CNAME alias points
25d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen */
26d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chenpublic
27d7955ce24d294fb2014c59d11fca184471056f44Shuyi ChenCNAMERecord(Name name, int dclass, long ttl, Name alias) {
28d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen	super(name, Type.CNAME, dclass, ttl, alias, "alias");
29d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen}
30d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
31d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen/**
32d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen * Gets the target of the CNAME Record
33d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen */
34d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chenpublic Name
35d7955ce24d294fb2014c59d11fca184471056f44Shuyi ChengetTarget() {
36d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen	return getSingleName();
37d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen}
38d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
39d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen/** Gets the alias specified by the CNAME Record */
40d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chenpublic Name
41d7955ce24d294fb2014c59d11fca184471056f44Shuyi ChengetAlias() {
42d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen	return getSingleName();
43d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen}
44d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen
45d7955ce24d294fb2014c59d11fca184471056f44Shuyi Chen}
46