Builder
class Builder
kotlin.Any | |
↳ | android.net.http.DnsOptions.Builder |
Builder for DnsOptions
.
Summary
Public constructors | |
---|---|
Builder() |
Public methods | |
---|---|
DnsOptions |
build() Creates and returns the final |
DnsOptions.Builder |
setPersistHostCache(state: Int) Sets whether the DNS cache should be persisted to disk. |
DnsOptions.Builder |
setPersistHostCachePeriod(persistHostCachePeriod: Duration) Sets the minimum period between subsequent writes to disk for DNS cache persistence. |
DnsOptions.Builder |
Sets whether Cronet should use stale cached DNS records to pre-establish connections. |
DnsOptions.Builder |
setStaleDns(state: Int) Sets whether to use stale DNS results at all. |
DnsOptions.Builder |
setStaleDnsOptions(staleDnsOptions: DnsOptions.StaleDnsOptions) Sets detailed configuration for stale DNS. |
DnsOptions.Builder |
setUseHttpStackDnsResolver(state: Int) Enables the use of the HTTP-stack-specific DNS resolver. |
Public constructors
Public methods
build
fun build(): DnsOptions
Creates and returns the final DnsOptions
instance, based on the values in this builder.
Return | |
---|---|
DnsOptions |
This value cannot be null . |
setPersistHostCache
fun setPersistHostCache(state: Int): DnsOptions.Builder
Sets whether the DNS cache should be persisted to disk.
Only relevant if HttpEngine.Builder#setStoragePath(String)
is set.
Parameters | |
---|---|
state |
Int: one of the DNS_OPTION_* values Value is android.net.http.DnsOptions#DNS_OPTION_UNSPECIFIED , android.net.http.DnsOptions#DNS_OPTION_ENABLED , or android.net.http.DnsOptions#DNS_OPTION_DISABLED |
Return | |
---|---|
DnsOptions.Builder |
the builder for chaining This value cannot be null . |
setPersistHostCachePeriod
fun setPersistHostCachePeriod(persistHostCachePeriod: Duration): DnsOptions.Builder
Sets the minimum period between subsequent writes to disk for DNS cache persistence.
Only relevant if setPersistHostCache(int)
is set to DNS_OPTION_ENABLED
.
Parameters | |
---|---|
persistHostCachePeriod |
Duration: This value cannot be null . |
Return | |
---|---|
DnsOptions.Builder |
the builder for chaining This value cannot be null . |
setPreestablishConnectionsToStaleDnsResults
fun setPreestablishConnectionsToStaleDnsResults(state: Int): DnsOptions.Builder
Sets whether Cronet should use stale cached DNS records to pre-establish connections.
If enabled, Cronet will optimistically pre-establish connections to servers that matched the hostname at some point in the past and were cached but the cache entry expired. Such connections won't be used further until a new DNS lookup confirms the cached record was up to date.
To use cached DNS records straight away, use setStaleDns(int)
and StaleDnsOptions
configuration options.
This option may not be available for all networking protocols.
Parameters | |
---|---|
state |
Int: one of the DNS_OPTION_* values Value is android.net.http.DnsOptions#DNS_OPTION_UNSPECIFIED , android.net.http.DnsOptions#DNS_OPTION_ENABLED , or android.net.http.DnsOptions#DNS_OPTION_DISABLED |
Return | |
---|---|
DnsOptions.Builder |
the builder for chaining This value cannot be null . |
setStaleDns
fun setStaleDns(state: Int): DnsOptions.Builder
Sets whether to use stale DNS results at all.
Parameters | |
---|---|
state |
Int: one of the DNS_OPTION_* values Value is android.net.http.DnsOptions#DNS_OPTION_UNSPECIFIED , android.net.http.DnsOptions#DNS_OPTION_ENABLED , or android.net.http.DnsOptions#DNS_OPTION_DISABLED |
Return | |
---|---|
DnsOptions.Builder |
the builder for chaining This value cannot be null . |
setStaleDnsOptions
fun setStaleDnsOptions(staleDnsOptions: DnsOptions.StaleDnsOptions): DnsOptions.Builder
Sets detailed configuration for stale DNS. Only relevant if setStaleDns(int)
is set.
Parameters | |
---|---|
staleDnsOptions |
DnsOptions.StaleDnsOptions: This value cannot be null . |
Return | |
---|---|
DnsOptions.Builder |
this builder for chaining. This value cannot be null . |
setUseHttpStackDnsResolver
fun setUseHttpStackDnsResolver(state: Int): DnsOptions.Builder
Enables the use of the HTTP-stack-specific DNS resolver.
Setting this to DNS_OPTION_ENABLED
is necessary for other functionality of DnsOptions
to work, unless specified otherwise. See the DnsOptions
documentation for more details.
Parameters | |
---|---|
state |
Int: one of the DNS_OPTION_* values Value is android.net.http.DnsOptions#DNS_OPTION_UNSPECIFIED , android.net.http.DnsOptions#DNS_OPTION_ENABLED , or android.net.http.DnsOptions#DNS_OPTION_DISABLED |
Return | |
---|---|
DnsOptions.Builder |
the builder for chaining This value cannot be null . |