Package io.grpc.xds
Class FilterChainMatchingProtocolNegotiators.FilterChainMatchingHandler.FilterChainSelector
java.lang.Object
io.grpc.xds.FilterChainMatchingProtocolNegotiators.FilterChainMatchingHandler.FilterChainSelector
- Enclosing class:
FilterChainMatchingProtocolNegotiators.FilterChainMatchingHandler
static final class FilterChainMatchingProtocolNegotiators.FilterChainMatchingHandler.FilterChainSelector
extends Object
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AtomicReference
<XdsServerWrapper.ServerRoutingConfig> private final SslContextProviderSupplier
private final Map
<EnvoyServerProtoData.FilterChain, AtomicReference<XdsServerWrapper.ServerRoutingConfig>> -
Constructor Summary
ConstructorsConstructorDescriptionFilterChainSelector
(Map<EnvoyServerProtoData.FilterChain, AtomicReference<XdsServerWrapper.ServerRoutingConfig>> routingConfigs, SslContextProviderSupplier defaultSslContextProviderSupplier, AtomicReference<XdsServerWrapper.ServerRoutingConfig> defaultRoutingConfig) -
Method Summary
Modifier and TypeMethodDescriptionprivate static Collection
<EnvoyServerProtoData.FilterChain> private static Collection
<EnvoyServerProtoData.FilterChain> filterOnDestinationPort
(Collection<EnvoyServerProtoData.FilterChain> filterChains) private static Collection
<EnvoyServerProtoData.FilterChain> filterOnIpAddress
(Collection<EnvoyServerProtoData.FilterChain> filterChains, InetAddress address, boolean forDestination) private static Collection
<EnvoyServerProtoData.FilterChain> filterOnServerNames
(Collection<EnvoyServerProtoData.FilterChain> filterChains) private static Collection
<EnvoyServerProtoData.FilterChain> filterOnSourcePort
(Collection<EnvoyServerProtoData.FilterChain> filterChains, int sourcePort) private static Collection
<EnvoyServerProtoData.FilterChain> filterOnSourceType
(Collection<EnvoyServerProtoData.FilterChain> filterChains, InetAddress sourceAddress, InetAddress destAddress) private static Collection
<EnvoyServerProtoData.FilterChain> filterOnTransportProtocol
(Collection<EnvoyServerProtoData.FilterChain> filterChains) (package private) AtomicReference
<XdsServerWrapper.ServerRoutingConfig> (package private) SslContextProviderSupplier
private static int
getMatchingPrefixLength
(EnvoyServerProtoData.FilterChainMatch filterChainMatch, InetAddress address, boolean forDestination) (package private) Map
<EnvoyServerProtoData.FilterChain, AtomicReference<XdsServerWrapper.ServerRoutingConfig>> (package private) FilterChainMatchingProtocolNegotiators.SelectedConfig
select
(InetSocketAddress localAddr, InetSocketAddress remoteAddr) Throws IllegalStateException when no exact one match, and we should close the connection.toString()
-
Field Details
-
NO_FILTER_CHAIN
public static final FilterChainMatchingProtocolNegotiators.FilterChainMatchingHandler.FilterChainSelector NO_FILTER_CHAIN -
routingConfigs
private final Map<EnvoyServerProtoData.FilterChain,AtomicReference<XdsServerWrapper.ServerRoutingConfig>> routingConfigs -
defaultSslContextProviderSupplier
-
defaultRoutingConfig
-
-
Constructor Details
-
FilterChainSelector
FilterChainSelector(Map<EnvoyServerProtoData.FilterChain, AtomicReference<XdsServerWrapper.ServerRoutingConfig>> routingConfigs, @Nullable SslContextProviderSupplier defaultSslContextProviderSupplier, AtomicReference<XdsServerWrapper.ServerRoutingConfig> defaultRoutingConfig)
-
-
Method Details
-
getRoutingConfigs
Map<EnvoyServerProtoData.FilterChain,AtomicReference<XdsServerWrapper.ServerRoutingConfig>> getRoutingConfigs() -
getDefaultRoutingConfig
AtomicReference<XdsServerWrapper.ServerRoutingConfig> getDefaultRoutingConfig() -
getDefaultSslContextProviderSupplier
SslContextProviderSupplier getDefaultSslContextProviderSupplier() -
select
FilterChainMatchingProtocolNegotiators.SelectedConfig select(InetSocketAddress localAddr, InetSocketAddress remoteAddr) Throws IllegalStateException when no exact one match, and we should close the connection. -
filterOnApplicationProtocols
private static Collection<EnvoyServerProtoData.FilterChain> filterOnApplicationProtocols(Collection<EnvoyServerProtoData.FilterChain> filterChains) -
filterOnTransportProtocol
private static Collection<EnvoyServerProtoData.FilterChain> filterOnTransportProtocol(Collection<EnvoyServerProtoData.FilterChain> filterChains) -
filterOnServerNames
private static Collection<EnvoyServerProtoData.FilterChain> filterOnServerNames(Collection<EnvoyServerProtoData.FilterChain> filterChains) -
filterOnDestinationPort
private static Collection<EnvoyServerProtoData.FilterChain> filterOnDestinationPort(Collection<EnvoyServerProtoData.FilterChain> filterChains) -
filterOnSourcePort
private static Collection<EnvoyServerProtoData.FilterChain> filterOnSourcePort(Collection<EnvoyServerProtoData.FilterChain> filterChains, int sourcePort) -
filterOnSourceType
private static Collection<EnvoyServerProtoData.FilterChain> filterOnSourceType(Collection<EnvoyServerProtoData.FilterChain> filterChains, InetAddress sourceAddress, InetAddress destAddress) -
getMatchingPrefixLength
private static int getMatchingPrefixLength(EnvoyServerProtoData.FilterChainMatch filterChainMatch, InetAddress address, boolean forDestination) -
filterOnIpAddress
private static Collection<EnvoyServerProtoData.FilterChain> filterOnIpAddress(Collection<EnvoyServerProtoData.FilterChain> filterChains, InetAddress address, boolean forDestination) -
toString
-