Top Fields Constructors Methods
io.netty5.resolver.dns

pack-priv abstract Class DnsQueryContext

extends Object
implements FutureListener<AddressedEnvelope<DnsResponse, InetSocketAddress>>
Class Inheritance
All Implemented Interfaces
io.netty5.util.concurrent.FutureListener
Known Direct Subclasses
io.netty5.resolver.dns.DatagramDnsQueryContext, io.netty5.resolver.dns.TcpDnsQueryContext
Imports
io.netty5.channel.AddressedEnvelope, .Channel, io.netty5.handler.codec.dns.AbstractDnsOptPseudoRrRecord, .DnsOptPseudoRecord, .DnsQuery, .DnsQuestion, .DnsRecord, .DnsRecordType, .DnsResponse, .DnsSection, io.netty5.util.Resource, io.netty5.util.concurrent.Future, .FutureListener, .Promise, io.netty5.util.internal.SilentDispose, io.netty5.util.internal.logging.InternalLogger, .InternalLoggerFactory, java.net.InetSocketAddress, java.util.concurrent.TimeUnit

Field Summary

Modifier and TypeField and Description
private final DnsRecord[]
private final int
private static final InternalLogger
private final InetSocketAddress
private final DnsRecord
private final DnsNameResolver
private final Promise<AddressedEnvelope<DnsResponse, InetSocketAddress>>
private final DnsQuestion
private final boolean
private volatile Future<?>

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
protected abstract Channel
private void
failQuery(DnsQuery query, Throwable cause, Promise<Void> writePromise)

pack-priv void
finish(AddressedEnvelope<? extends DnsResponse, InetSocketAddress> envelope)

Takes ownership of passed envelope

private static boolean
hasOptRecord(DnsRecord[] additionals)

pack-priv InetSocketAddress
protected abstract DnsQuery
newQuery(int id)

private void
onQueryWriteCompletion(Future<?> writeFuture, Promise<Void> writePromise)

public void
operationComplete(Future<? extends AddressedEnvelope<DnsResponse, InetSocketAddress>>
the source Future which called this callback
future
)

Implements io.netty5.util.concurrent.FutureListener.operationComplete.

Invoked when the operation associated with the Future has been completed.
pack-priv DnsNameResolver
protected abstract String
pack-priv void
query(boolean flush, Promise<Void> writePromise)

pack-priv DnsQuestion
private void
sendQuery(final DnsQuery query, final boolean flush, final Promise<Void> writePromise)

pack-priv boolean
tryFailure(String message, Throwable cause, boolean timeout)

private boolean
private void
writeQuery(final DnsQuery query, final boolean flush, final Promise<Void> writePromise)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

additionalsback to summary
private final DnsRecord[] additionals
idback to summary
private final int id
loggerback to summary
private static final InternalLogger logger
nameServerAddrback to summary
private final InetSocketAddress nameServerAddr
optResourceback to summary
private final DnsRecord optResource
parentback to summary
private final DnsNameResolver parent
promiseback to summary
private final Promise<AddressedEnvelope<DnsResponse, InetSocketAddress>> promise
questionback to summary
private final DnsQuestion question
recursionDesiredback to summary
private final boolean recursionDesired
timeoutFutureback to summary
private volatile Future<?> timeoutFuture

Constructor Detail

DnsQueryContextback to summary
pack-priv DnsQueryContext(DnsNameResolver parent, InetSocketAddress nameServerAddr, DnsQuestion question, DnsRecord[] additionals, Promise<AddressedEnvelope<DnsResponse, InetSocketAddress>> promise)

Method Detail

channelback to summary
protected abstract Channel channel()
failQueryback to summary
private void failQuery(DnsQuery query, Throwable cause, Promise<Void> writePromise)
finishback to summary
pack-priv void finish(AddressedEnvelope<? extends DnsResponse, InetSocketAddress> envelope)

Takes ownership of passed envelope

hasOptRecordback to summary
private static boolean hasOptRecord(DnsRecord[] additionals)
nameServerAddrback to summary
pack-priv InetSocketAddress nameServerAddr()
newQueryback to summary
protected abstract DnsQuery newQuery(int id)
onQueryWriteCompletionback to summary
private void onQueryWriteCompletion(Future<?> writeFuture, Promise<Void> writePromise)
operationCompleteback to summary
public void operationComplete(Future<? extends AddressedEnvelope<DnsResponse, InetSocketAddress>> future)

Implements io.netty5.util.concurrent.FutureListener.operationComplete.

Doc from io.netty5.util.concurrent.FutureListener.operationComplete.

Invoked when the operation associated with the Future has been completed.

Parameters
future:Future<? extends AddressedEnvelope<DnsResponse, InetSocketAddress>>

the source Future which called this callback

Annotations
@Override
parentback to summary
pack-priv DnsNameResolver parent()
protocolback to summary
protected abstract String protocol()
queryback to summary
pack-priv void query(boolean flush, Promise<Void> writePromise)
questionback to summary
pack-priv DnsQuestion question()
sendQueryback to summary
private void sendQuery(final DnsQuery query, final boolean flush, final Promise<Void> writePromise)
tryFailureback to summary
pack-priv boolean tryFailure(String message, Throwable cause, boolean timeout)
trySuccessback to summary
private boolean trySuccess(AddressedEnvelope<? extends DnsResponse, InetSocketAddress> envelope)
Annotations
@SuppressWarnings:unchecked
writeQueryback to summary
private void writeQuery(final DnsQuery query, final boolean flush, final Promise<Void> writePromise)