JdkAlpnApplicationProtocolNegotiator Class — netty Architecture
Architecture documentation for the JdkAlpnApplicationProtocolNegotiator class in JdkAlpnApplicationProtocolNegotiator.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 2a659e94_0b45_8bf6_2231_612993411e6c["JdkAlpnApplicationProtocolNegotiator"] 3ca15c7f_1a43_6ede_7980_b5d11c6a55d1["JdkAlpnApplicationProtocolNegotiator.java"] 2a659e94_0b45_8bf6_2231_612993411e6c -->|defined in| 3ca15c7f_1a43_6ede_7980_b5d11c6a55d1 be8beba0_7967_532b_1c23_998b694fc556["JdkAlpnApplicationProtocolNegotiator()"] 2a659e94_0b45_8bf6_2231_612993411e6c -->|method| be8beba0_7967_532b_1c23_998b694fc556 ec9f07fb_1969_c9b7_cfbf_ba5af96abe8e["isAlpnSupported()"] 2a659e94_0b45_8bf6_2231_612993411e6c -->|method| ec9f07fb_1969_c9b7_cfbf_ba5af96abe8e
Relationship Graph
Source Code
handler/src/main/java/io/netty/handler/ssl/JdkAlpnApplicationProtocolNegotiator.java lines 28–153
@Deprecated
public final class JdkAlpnApplicationProtocolNegotiator extends JdkBaseApplicationProtocolNegotiator {
private static final boolean AVAILABLE = Conscrypt.isAvailable() ||
JdkAlpnSslUtils.supportsAlpn() ||
(BouncyCastleUtil.isBcTlsAvailable() && BouncyCastleAlpnSslUtils.isAlpnSupported());
private static final SslEngineWrapperFactory ALPN_WRAPPER = AVAILABLE ? new AlpnWrapper() : new FailureWrapper();
/**
* Create a new instance.
* @param protocols The order of iteration determines the preference of support for protocols.
*/
public JdkAlpnApplicationProtocolNegotiator(Iterable<String> protocols) {
this(false, protocols);
}
/**
* Create a new instance.
* @param protocols The order of iteration determines the preference of support for protocols.
*/
public JdkAlpnApplicationProtocolNegotiator(String... protocols) {
this(false, protocols);
}
/**
* Create a new instance.
* @param failIfNoCommonProtocols Fail with a fatal alert if not common protocols are detected.
* @param protocols The order of iteration determines the preference of support for protocols.
*/
public JdkAlpnApplicationProtocolNegotiator(boolean failIfNoCommonProtocols, Iterable<String> protocols) {
this(failIfNoCommonProtocols, failIfNoCommonProtocols, protocols);
}
/**
* Create a new instance.
* @param failIfNoCommonProtocols Fail with a fatal alert if not common protocols are detected.
* @param protocols The order of iteration determines the preference of support for protocols.
*/
public JdkAlpnApplicationProtocolNegotiator(boolean failIfNoCommonProtocols, String... protocols) {
this(failIfNoCommonProtocols, failIfNoCommonProtocols, protocols);
}
/**
* Create a new instance.
* @param clientFailIfNoCommonProtocols Client side fail with a fatal alert if not common protocols are detected.
* @param serverFailIfNoCommonProtocols Server side fail with a fatal alert if not common protocols are detected.
* @param protocols The order of iteration determines the preference of support for protocols.
*/
public JdkAlpnApplicationProtocolNegotiator(boolean clientFailIfNoCommonProtocols,
boolean serverFailIfNoCommonProtocols, Iterable<String> protocols) {
this(serverFailIfNoCommonProtocols ? FAIL_SELECTOR_FACTORY : NO_FAIL_SELECTOR_FACTORY,
clientFailIfNoCommonProtocols ? FAIL_SELECTION_LISTENER_FACTORY : NO_FAIL_SELECTION_LISTENER_FACTORY,
protocols);
}
/**
* Create a new instance.
* @param clientFailIfNoCommonProtocols Client side fail with a fatal alert if not common protocols are detected.
* @param serverFailIfNoCommonProtocols Server side fail with a fatal alert if not common protocols are detected.
* @param protocols The order of iteration determines the preference of support for protocols.
*/
public JdkAlpnApplicationProtocolNegotiator(boolean clientFailIfNoCommonProtocols,
boolean serverFailIfNoCommonProtocols, String... protocols) {
this(serverFailIfNoCommonProtocols ? FAIL_SELECTOR_FACTORY : NO_FAIL_SELECTOR_FACTORY,
clientFailIfNoCommonProtocols ? FAIL_SELECTION_LISTENER_FACTORY : NO_FAIL_SELECTION_LISTENER_FACTORY,
protocols);
}
/**
* Create a new instance.
* @param selectorFactory The factory which provides classes responsible for selecting the protocol.
* @param listenerFactory The factory which provides to be notified of which protocol was selected.
* @param protocols The order of iteration determines the preference of support for protocols.
*/
public JdkAlpnApplicationProtocolNegotiator(ProtocolSelectorFactory selectorFactory,
ProtocolSelectionListenerFactory listenerFactory, Iterable<String> protocols) {
super(ALPN_WRAPPER, selectorFactory, listenerFactory, protocols);
}
/**
* Create a new instance.
Source
Frequently Asked Questions
What is the JdkAlpnApplicationProtocolNegotiator class?
JdkAlpnApplicationProtocolNegotiator is a class in the netty codebase, defined in handler/src/main/java/io/netty/handler/ssl/JdkAlpnApplicationProtocolNegotiator.java.
Where is JdkAlpnApplicationProtocolNegotiator defined?
JdkAlpnApplicationProtocolNegotiator is defined in handler/src/main/java/io/netty/handler/ssl/JdkAlpnApplicationProtocolNegotiator.java at line 28.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free