Package javax.jmdns.impl
Class DNSMessage
- java.lang.Object
-
- javax.jmdns.impl.DNSMessage
-
- Direct Known Subclasses:
DNSIncoming,DNSOutgoing
public abstract class DNSMessage extends Object
DNSMessage define a DNS message either incoming or outgoing.- Author:
- Werner Randelshofer, Rick Blair, Pierre Frisch
-
-
Field Summary
Fields Modifier and Type Field Description protected List<DNSRecord>_additionalsprotected List<DNSRecord>_answersprotected List<DNSRecord>_authoritativeAnswersprotected List<DNSQuestion>_questionsstatic booleanMULTICASTstatic booleanUNICAST
-
Constructor Summary
Constructors Modifier Constructor Description protectedDNSMessage(int flags, int id, boolean multicast)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Collection<? extends DNSRecord>getAdditionals()List<DNSRecord>getAllAnswers()Collection<? extends DNSRecord>getAnswers()Collection<? extends DNSRecord>getAuthorities()intgetFlags()intgetId()intgetNumberOfAdditionals()intgetNumberOfAnswers()intgetNumberOfAuthorities()intgetNumberOfQuestions()intgetOperationCode()Returns the operation code value.Collection<? extends DNSQuestion>getQuestions()booleanisAuthoritativeAnswer()Check if the message is an authoritative answer.booleanisEmpty()Check if the message is emptybooleanisMulticast()booleanisQuery()Check if the message is a query.booleanisResponse()Check if the message is a response.booleanisTruncated()Check if the message is truncated.booleanisValidResponseCode()Check is the response code is valid
The only valid value is zero all other values signify an error and the message must be ignored.protected Stringprint(byte[] data)Debugging.voidsetFlags(int flags)voidsetId(int id)
-
-
-
Field Detail
-
MULTICAST
public static final boolean MULTICAST
- See Also:
- Constant Field Values
-
UNICAST
public static final boolean UNICAST
- See Also:
- Constant Field Values
-
_questions
protected final List<DNSQuestion> _questions
-
-
Method Detail
-
getId
public int getId()
- Returns:
- message id
-
setId
public void setId(int id)
- Parameters:
id- the id to set
-
getFlags
public int getFlags()
- Returns:
- message flags
-
setFlags
public void setFlags(int flags)
- Parameters:
flags- the flags to set
-
isMulticast
public boolean isMulticast()
- Returns:
- true if multicast
-
getQuestions
public Collection<? extends DNSQuestion> getQuestions()
- Returns:
- list of questions
-
getNumberOfQuestions
public int getNumberOfQuestions()
- Returns:
- number of questions in the message
-
getAnswers
public Collection<? extends DNSRecord> getAnswers()
- Returns:
- list of answers
-
getNumberOfAnswers
public int getNumberOfAnswers()
- Returns:
- number of answers in the message
-
getAuthorities
public Collection<? extends DNSRecord> getAuthorities()
- Returns:
- list of authorities
-
getNumberOfAuthorities
public int getNumberOfAuthorities()
- Returns:
- number of authorities in the message
-
getAdditionals
public Collection<? extends DNSRecord> getAdditionals()
- Returns:
- list of additional answers
-
getNumberOfAdditionals
public int getNumberOfAdditionals()
- Returns:
- number of additional in the message
-
isValidResponseCode
public boolean isValidResponseCode()
Check is the response code is valid
The only valid value is zero all other values signify an error and the message must be ignored.- Returns:
- true if the message has a valid response code.
-
getOperationCode
public int getOperationCode()
Returns the operation code value. Currently only standard query 0 is valid.- Returns:
- The operation code value.
-
isTruncated
public boolean isTruncated()
Check if the message is truncated.- Returns:
- true if the message was truncated
-
isAuthoritativeAnswer
public boolean isAuthoritativeAnswer()
Check if the message is an authoritative answer.- Returns:
- true if the message is an authoritative answer
-
isQuery
public boolean isQuery()
Check if the message is a query.- Returns:
- true is the message is a query
-
isResponse
public boolean isResponse()
Check if the message is a response.- Returns:
- true is the message is a response
-
isEmpty
public boolean isEmpty()
Check if the message is empty- Returns:
- true is the message is empty
-
print
protected String print(byte[] data)
Debugging.- Parameters:
data-- Returns:
- data dump
-
-