Top Description Inners Fields Constructors Methods
io.undertow.protocols.alpn

public Class OpenSSLAlpnProvider

extends Object
implements ALPNProvider
Class Inheritance
All Implemented Interfaces
io.undertow.protocols.alpn.ALPNProvider
Imports
java.lang.reflect.InvocationTargetException, .Method, java.security.AccessController, .PrivilegedAction, javax.net.ssl.SSLEngine, io.undertow.UndertowLogger

Open listener adaptor for ALPN connections that use the Wildfly OpenSSL implementation

Author
Stuart Douglas

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
private static volatile boolean
public static final String
private static volatile OpenSSLAlpnProvider.OpenSSLALPNMethods

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static OpenSSLAlpnProvider.OpenSSLALPNMethods
public int
public String
getSelectedProtocol(SSLEngine
The SSL Engine
engine
)

Implements io.undertow.protocols.alpn.ALPNProvider.getSelectedProtocol.

Gets the selected ALPN protocol, of null if none was selected.

public boolean
public SSLEngine
setProtocols(SSLEngine
The original engine
engine
,
String[]
The protocols
protocols
)

Implements io.undertow.protocols.alpn.ALPNProvider.setProtocols.

Sets the SSL protocols, and potentially wraps the SSLEngine

public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

initializedback to summary
private static volatile boolean initialized
OPENSSL_ENGINEback to summary
public static final String OPENSSL_ENGINE
openSSLALPNMethodsback to summary
private static volatile OpenSSLAlpnProvider.OpenSSLALPNMethods openSSLALPNMethods

Constructor Detail

OpenSSLAlpnProviderback to summary
public OpenSSLAlpnProvider()

Method Detail

getOpenSSLAlpnMethodsback to summary
private static OpenSSLAlpnProvider.OpenSSLALPNMethods getOpenSSLAlpnMethods()
getPriorityback to summary
public int getPriority()

Implements io.undertow.protocols.alpn.ALPNProvider.getPriority.

Returns:int

Doc from io.undertow.protocols.alpn.ALPNProvider.getPriority.

The priority of this provider, higher priority providers will be tried first

Annotations
@Override
getSelectedProtocolback to summary
public String getSelectedProtocol(SSLEngine engine)

Implements io.undertow.protocols.alpn.ALPNProvider.getSelectedProtocol.

Doc from io.undertow.protocols.alpn.ALPNProvider.getSelectedProtocol.

Gets the selected ALPN protocol, of null if none was selected.

Parameters
engine:SSLEngine

The SSL Engine

Returns:String

The selected protocol

Annotations
@Override
isEnabledback to summary
public boolean isEnabled(SSLEngine sslEngine)

Implements io.undertow.protocols.alpn.ALPNProvider.isEnabled.

Annotations
@Override
setProtocolsback to summary
public SSLEngine setProtocols(SSLEngine engine, String[] protocols)

Implements io.undertow.protocols.alpn.ALPNProvider.setProtocols.

Doc from io.undertow.protocols.alpn.ALPNProvider.setProtocols.

Sets the SSL protocols, and potentially wraps the SSLEngine

Parameters
engine:SSLEngine

The original engine

protocols:String[]

The protocols

Returns:SSLEngine

The new SSLEngine

Annotations
@Override
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Returns:String

a string representation of the object

Annotations
@Override
io.undertow.protocols.alpn back to summary

public Class OpenSSLAlpnProvider.OpenSSLALPNMethods

extends Object
Class Inheritance
  • java.lang.Object
  • io.undertow.protocols.alpn.OpenSSLAlpnProvider.OpenSSLALPNMethods

Field Summary

Modifier and TypeField and Description
private final Method
private final Method

Constructor Summary

AccessConstructor and Description
pack-priv
OpenSSLALPNMethods(Method setApplicationProtocols, Method getApplicationProtocol)

Method Summary

Modifier and TypeMethod and Description
public Method
public Method
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

getApplicationProtocolback to summary
private final Method getApplicationProtocol
setApplicationProtocolsback to summary
private final Method setApplicationProtocols

Constructor Detail

OpenSSLALPNMethodsback to summary
pack-priv OpenSSLALPNMethods(Method setApplicationProtocols, Method getApplicationProtocol)

Method Detail

getApplicationProtocolback to summary
public Method getApplicationProtocol()
setApplicationProtocolsback to summary
public Method setApplicationProtocols()