Class ClientConnector.Configurator
- All Implemented Interfaces:
Container, Destroyable, Dumpable, Dumpable.DumpableContainer, LifeCycle
- Direct Known Subclasses:
QuicClientConnectorConfigurator
- Enclosing class:
ClientConnector
Configures a ClientConnector.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classDeprecated, for removal: This API element is subject to removal in a future version.replaced byTransportNested classes/interfaces inherited from class AbstractLifeCycle
AbstractLifeCycle.AbstractLifeCycleListener, AbstractLifeCycle.StopExceptionNested classes/interfaces inherited from interface Container
Container.InheritedListener, Container.ListenerNested classes/interfaces inherited from interface Dumpable
Dumpable.DumpableContainerNested classes/interfaces inherited from interface LifeCycle
LifeCycle.Listener -
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionDeprecated, for removal: This API element is subject to removal in a future version. -
Method Summary
Modifier and TypeMethodDescriptionbooleanisIntrinsicallySecure(ClientConnector clientConnector, SocketAddress address) Deprecated, for removal: This API element is subject to removal in a future version.Returns whether the connection to a givenSocketAddressis intrinsically secure.newChannelWithAddress(ClientConnector clientConnector, SocketAddress address, Map<String, Object> context) Deprecated, for removal: This API element is subject to removal in a future version.Creates a newSocketChannelto connect to aSocketAddressderived from the input socket address.newConnection(ClientConnector clientConnector, SocketAddress address, EndPoint endPoint, Map<String, Object> context) Deprecated, for removal: This API element is subject to removal in a future version.newEndPoint(ClientConnector clientConnector, SocketAddress address, SelectableChannel selectable, ManagedSelector selector, SelectionKey selectionKey) Deprecated, for removal: This API element is subject to removal in a future version.Deprecated, for removal: This API element is subject to removal in a future version.Methods inherited from class ContainerLifeCycle
addBean, addBean, addEventListener, addManaged, contains, destroy, doStart, doStop, dump, dump, dump, dumpObjects, dumpStdErr, getBean, getBeans, getBeans, getContainedBeans, getContainedBeans, installBean, installBean, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, start, stop, unmanage, updateBean, updateBean, updateBeans, updateBeansMethods inherited from class AbstractLifeCycle
getEventListeners, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, setEventListeners, start, stop, toStringMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface Container
getCachedBeans, getEventListenersMethods inherited from interface Dumpable.DumpableContainer
isDumpable
-
Constructor Details
-
Configurator
public Configurator()Deprecated, for removal: This API element is subject to removal in a future version.
-
-
Method Details
-
newTransport
-
isIntrinsicallySecure
Deprecated, for removal: This API element is subject to removal in a future version.Returns whether the connection to a given
SocketAddressis intrinsically secure.A protocol such as HTTP/1.1 can be transported by TCP; however, TCP is not secure because it does not offer any encryption.
Encryption is provided by using TLS to wrap the HTTP/1.1 bytes, and then transporting the TLS bytes over TCP.
On the other hand, protocols such as QUIC are intrinsically secure, and therefore it is not necessary to wrap the HTTP/1.1 bytes with TLS: the HTTP/1.1 bytes are transported over QUIC in an intrinsically secure way.
- Parameters:
clientConnector- the ClientConnectoraddress- the SocketAddress to connect to- Returns:
- whether the connection to the given SocketAddress is intrinsically secure
-
newChannelWithAddress
public ClientConnector.Configurator.ChannelWithAddress newChannelWithAddress(ClientConnector clientConnector, SocketAddress address, Map<String, Object> context) throws IOExceptionDeprecated, for removal: This API element is subject to removal in a future version.Creates a new
SocketChannelto connect to aSocketAddressderived from the input socket address.The input socket address represents the destination socket address to connect to, as it is typically specified by a URI authority, for example
localhost:8080if the URI ishttp://localhost:8080/path.However, the returned socket address may be different as the implementation may use a Unix-Domain socket address to physically connect to the virtual destination socket address given as input.
The return type is a pair/record holding the socket channel and the socket address, with the socket channel not yet connected. The implementation of this methods must not call
SocketChannel.connect(SocketAddress), as this is done later, after configuring the socket, by theClientConnectorimplementation.- Parameters:
clientConnector- the client connector requesting channel with associated addressaddress- the destination socket address, typically specified in a URIcontext- the context to create the new socket channel- Returns:
- a new
SocketChannelwith an associatedSocketAddressto connect to - Throws:
IOException- if the socket channel or the socket address cannot be created
-
newEndPoint
public EndPoint newEndPoint(ClientConnector clientConnector, SocketAddress address, SelectableChannel selectable, ManagedSelector selector, SelectionKey selectionKey) Deprecated, for removal: This API element is subject to removal in a future version. -
newConnection
public Connection newConnection(ClientConnector clientConnector, SocketAddress address, EndPoint endPoint, Map<String, Object> context) throws IOExceptionDeprecated, for removal: This API element is subject to removal in a future version.- Throws:
IOException
-
Transport