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

📄 txtrecord.java

📁 linux下建立JAVA虚拟机的源码KAFFE
💻 JAVA
字号:
// Copyright (c) 1999-2004 Brian Wellington (bwelling@xbill.org)package org.xbill.DNS;import java.io.*;import java.util.*;/** * Text - stores text strings * * @author Brian Wellington */public class TXTRecord extends Record {private List strings;TXTRecord() {}RecordgetObject() {	return new TXTRecord();}/** * Creates a TXT Record from the given data * @param strings The text strings * @throws IllegalArgumentException One of the strings has invalid escapes */publicTXTRecord(Name name, int dclass, long ttl, List strings) {	super(name, Type.TXT, dclass, ttl);	if (strings == null)		throw new IllegalArgumentException				("TXTRecord: strings must not be null");	this.strings = new ArrayList(strings.size());	Iterator it = strings.iterator();	try {		while (it.hasNext()) {			String s = (String) it.next();			this.strings.add(byteArrayFromString(s));		}	}	catch (TextParseException e) {		throw new IllegalArgumentException(e.getMessage());	}}/** * Creates a TXT Record from the given data * @param string One text string * @throws IllegalArgumentException The string has invalid escapes */publicTXTRecord(Name name, int dclass, long ttl, String string) {	this(name, dclass, ttl, Collections.singletonList(string));}voidrrFromWire(DNSInput in) throws IOException {	strings = new ArrayList(2);	while (in.remaining() > 0) {		byte [] b = in.readCountedString();		strings.add(b);	}}voidrdataFromString(Tokenizer st, Name origin) throws IOException {	strings = new ArrayList(2);	while (true) {		Tokenizer.Token t = st.get();		if (!t.isString())			break;		try {			strings.add(byteArrayFromString(t.value));		}		catch (TextParseException e) { 			throw st.exception(e.getMessage());		}	}	st.unget();}/** converts to a String */StringrrToString() {	StringBuffer sb = new StringBuffer();	Iterator it = strings.iterator();	while (it.hasNext()) {		byte [] array = (byte []) it.next();		sb.append(byteArrayToString(array, true));		if (it.hasNext())			sb.append(" ");	}	return sb.toString();}/** * Returns the text strings * @return A list of Strings corresponding to the text strings. */public ListgetStrings() {	List list = new ArrayList(strings.size());	for (int i = 0; i < strings.size(); i++)		list.add(byteArrayToString((byte []) strings.get(i), false));	return list;}/** * Returns the text strings * @return A list of byte arrays corresponding to the text strings. */public ListgetStringsAsByteArrays() {	return strings;}voidrrToWire(DNSOutput out, Compression c, boolean canonical) {	Iterator it = strings.iterator();	while (it.hasNext()) {		byte [] b = (byte []) it.next();		out.writeCountedString(b);	}}}

⌨️ 快捷键说明

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