⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setresponse.java

📁 linux下建立JAVA虚拟机的源码KAFFE
💻 JAVA
字号:
// Copyright (c) 1999-2004 Brian Wellington (bwelling@xbill.org)package org.xbill.DNS;import java.util.*;/** * The Response from a query to Cache.lookupRecords() or Zone.findRecords() * @see Cache * @see Zone * * @author Brian Wellington */public class SetResponse {/** * The Cache contains no information about the requested name/type */static final int UNKNOWN	= 0;/** * The Zone does not contain the requested name, or the Cache has * determined that the name does not exist. */static final int NXDOMAIN	= 1;/** * The Zone contains the name, but no data of the requested type, * or the Cache has determined that the name exists and has no data * of the requested type. */static final int NXRRSET	= 2;/** * A delegation enclosing the requested name was found. */static final int DELEGATION	= 3;/** * The Cache/Zone found a CNAME when looking for the name. * @see CNAMERecord */static final int CNAME		= 4;/** * The Cache/Zone found a DNAME when looking for the name. * @see DNAMERecord */static final int DNAME		= 5;/** * The Cache/Zone has successfully answered the question for the * requested name/type/class. */static final int SUCCESSFUL	= 6;private static final SetResponse unknown = new SetResponse(UNKNOWN);private static final SetResponse nxdomain = new SetResponse(NXDOMAIN);private static final SetResponse nxrrset = new SetResponse(NXRRSET);private int type;private Object data;privateSetResponse() {}SetResponse(int type, RRset rrset) {	if (type < 0 || type > 6)		throw new IllegalArgumentException("invalid type");	this.type = type;	this.data = rrset;}SetResponse(int type) {	if (type < 0 || type > 6)		throw new IllegalArgumentException("invalid type");	this.type = type;	this.data = null;}static SetResponseofType(int type) {	switch (type) {		case UNKNOWN:			return unknown;		case NXDOMAIN:			return nxdomain;		case NXRRSET:			return nxrrset;		case DELEGATION:		case CNAME:		case DNAME:		case SUCCESSFUL:			SetResponse sr = new SetResponse();			sr.type = type;			sr.data = null;			return sr;		default:			throw new IllegalArgumentException("invalid type");	}}voidaddRRset(RRset rrset) {	if (data == null)		data = new ArrayList();	List l = (List) data;	l.add(rrset);}/** Is the answer to the query unknown? */public booleanisUnknown() {	return (type == UNKNOWN);}/** Is the answer to the query that the name does not exist? */public booleanisNXDOMAIN() {	return (type == NXDOMAIN);}/** Is the answer to the query that the name exists, but the type does not? */public booleanisNXRRSET() {	return (type == NXRRSET);}/** Is the result of the lookup that the name is below a delegation? */public booleanisDelegation() {	return (type == DELEGATION);}/** Is the result of the lookup a CNAME? */public booleanisCNAME() {	return (type == CNAME);}/** Is the result of the lookup a DNAME? */public booleanisDNAME() {	return (type == DNAME);}/** Was the query successful? */public booleanisSuccessful() {	return (type == SUCCESSFUL);}/** If the query was successful, return the answers */public RRset []answers() {	if (type != SUCCESSFUL)		return null;	List l = (List) data;	return (RRset []) l.toArray(new RRset[l.size()]);}/** * If the query encountered a CNAME, return it. */public CNAMERecordgetCNAME() {	return (CNAMERecord)((RRset)data).first();}/** * If the query encountered a DNAME, return it. */public DNAMERecordgetDNAME() {	return (DNAMERecord)((RRset)data).first();}/** * If the query hit a delegation point, return the NS set. */public RRsetgetNS() {	return (RRset)data;}/** Prints the value of the SetResponse */public StringtoString() {	switch (type) {		case UNKNOWN:		return "unknown";		case NXDOMAIN:		return "NXDOMAIN";		case NXRRSET:		return "NXRRSET";		case DELEGATION:	return "delegation: " + data;		case CNAME:		return "CNAME: " + data;		case DNAME:		return "DNAME: " + data;		case SUCCESSFUL:	return "successful";		default:		return null;	}}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -