Package io.netty.resolver
Class DefaultHostsFileEntriesResolver
java.lang.Object
io.netty.resolver.DefaultHostsFileEntriesResolver
- All Implemented Interfaces:
HostsFileEntriesResolver
public final class DefaultHostsFileEntriesResolver
extends Object
implements HostsFileEntriesResolver
Default
HostsFileEntriesResolver
that resolves hosts file entries only once.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final long
private final HostsFileEntriesProvider.Parser
private Map
<String, List<InetAddress>> private Map
<String, List<InetAddress>> private final AtomicLong
private static final InternalLogger
private final long
Fields inherited from interface io.netty.resolver.HostsFileEntriesResolver
DEFAULT
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultHostsFileEntriesResolver
(HostsFileEntriesProvider.Parser hostsFileParser, long refreshInterval) -
Method Summary
Modifier and TypeMethodDescriptionaddress
(String inetHost, ResolvedAddressTypes resolvedAddressTypes) Resolve the address of a hostname against the entries in a hosts file, depending on some address types.addresses
(String inetHost, ResolvedAddressTypes resolvedAddressTypes) Resolves all addresses of a hostname against the entries in a hosts file, depending on the specifiedResolvedAddressTypes
.private static List
<InetAddress> allAddresses
(List<InetAddress> a, List<InetAddress> b) private void
private static InetAddress
firstAddress
(List<InetAddress> addresses) (package private) String
private static HostsFileEntriesProvider
-
Field Details
-
logger
-
DEFAULT_REFRESH_INTERVAL
private static final long DEFAULT_REFRESH_INTERVAL -
refreshInterval
private final long refreshInterval -
lastRefresh
-
hostsFileParser
-
inet4Entries
-
inet6Entries
-
-
Constructor Details
-
DefaultHostsFileEntriesResolver
public DefaultHostsFileEntriesResolver() -
DefaultHostsFileEntriesResolver
DefaultHostsFileEntriesResolver(HostsFileEntriesProvider.Parser hostsFileParser, long refreshInterval)
-
-
Method Details
-
address
Description copied from interface:HostsFileEntriesResolver
Resolve the address of a hostname against the entries in a hosts file, depending on some address types.- Specified by:
address
in interfaceHostsFileEntriesResolver
- Parameters:
inetHost
- the hostname to resolveresolvedAddressTypes
- the address types to resolve- Returns:
- the first matching address
-
addresses
Resolves all addresses of a hostname against the entries in a hosts file, depending on the specifiedResolvedAddressTypes
.- Parameters:
inetHost
- the hostname to resolveresolvedAddressTypes
- the address types to resolve- Returns:
- all matching addresses or
null
in case the hostname cannot be resolved
-
ensureHostsFileEntriesAreFresh
private void ensureHostsFileEntriesAreFresh() -
normalize
-
allAddresses
-
firstAddress
-
parseEntries
-