Class HttpClientTransportOverHTTP2
java.lang.Object
org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.ContainerLifeCycle
org.eclipse.jetty.client.AbstractHttpClientTransport
org.eclipse.jetty.http2.client.transport.HttpClientTransportOverHTTP2
- All Implemented Interfaces:
HttpClient.Aware,HttpClientTransport,ClientConnectionFactory,Container,Destroyable,Dumpable,Dumpable.DumpableContainer,LifeCycle,Invocable
@ManagedObject("The HTTP/2 client transport")
public class HttpClientTransportOverHTTP2
extends AbstractHttpClientTransport
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
AbstractLifeCycle.AbstractLifeCycleListener, AbstractLifeCycle.StopExceptionNested classes/interfaces inherited from interface org.eclipse.jetty.io.ClientConnectionFactory
ClientConnectionFactory.Decorator, ClientConnectionFactory.Info, ClientConnectionFactory.WrapperNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container
Container.InheritedListener, Container.ListenerNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable
Dumpable.DumpableContainer, Dumpable.DumpAppendableNested classes/interfaces inherited from interface org.eclipse.jetty.util.thread.Invocable
Invocable.Callable, Invocable.InvocationType, Invocable.ReadyTask, Invocable.TaskNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
LifeCycle.Listener -
Field Summary
Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
FAILED, STARTED, STARTING, STOPPED, STOPPINGFields inherited from interface org.eclipse.jetty.io.ClientConnectionFactory
CONTEXT_KEYFields inherited from interface org.eclipse.jetty.util.thread.Invocable
__nonBlocking, NOOP -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidconnect(SocketAddress address, Map<String, Object> context) Establishes a physical connection to the givenaddress.protected voidconnect(Transport transport, SslContextFactory.Client sslContextFactory, SocketAddress address, Session.Listener listener, Promise<Session> promise, Map<String, Object> context) protected voiddoStart()Starts the managed lifecycle beans in the order they were added.intprotected ConnectionnewConnection(Destination destination, Session session, HTTP2Connection connection) newConnection(EndPoint endPoint, Map<String, Object> context) newDestination(Origin origin) Creates a new, transport-specific,HttpDestinationobject.Creates a new Origin with the given request.protected voidonClose(Connection connection, GoAwayFrame frame) Methods inherited from class org.eclipse.jetty.client.AbstractHttpClientTransport
connectFailed, getConnectionPoolFactory, getHttpClient, getInvocationType, setConnectionPoolFactory, setHttpClient, setInvocationTypeMethods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle
addBean, addBean, addEventListener, addManaged, contains, destroy, 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 org.eclipse.jetty.util.component.AbstractLifeCycle
getEventListeners, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, setEventListeners, start, stop, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.eclipse.jetty.io.ClientConnectionFactory
customizeMethods inherited from interface org.eclipse.jetty.util.component.Container
getCachedBeans, getEventListenersMethods inherited from interface org.eclipse.jetty.util.component.Dumpable.DumpableContainer
isDumpable
-
Constructor Details
-
HttpClientTransportOverHTTP2
-
-
Method Details
-
getHTTP2Client
-
getSelectors
-
doStart
Description copied from class:ContainerLifeCycleStarts the managed lifecycle beans in the order they were added.- Overrides:
doStartin classContainerLifeCycle- Throws:
AbstractLifeCycle.StopException- If thrown, the lifecycle will immediately be stopped.Exception- If there was a problem starting. Will cause a transition to FAILED state
-
newOrigin
Description copied from interface:HttpClientTransportCreates a new Origin with the given request.- Parameters:
request- the request that triggers the creation of the Origin- Returns:
- an Origin that identifies a destination
-
newDestination
Description copied from interface:HttpClientTransportCreates a new, transport-specific,HttpDestinationobject.HttpDestinationcontrols the destination-connection cardinality: protocols like HTTP have 1-N cardinality, while multiplexed protocols like HTTP/2 have a 1-1 cardinality.- Parameters:
origin- the destination origin- Returns:
- a new, transport-specific,
HttpDestinationobject
-
connect
Description copied from interface:HttpClientTransportEstablishes a physical connection to the givenaddress.- Parameters:
address- the address to connect tocontext- the context information to establish the connection
-
connect
protected void connect(Transport transport, SslContextFactory.Client sslContextFactory, SocketAddress address, Session.Listener listener, Promise<Session> promise, Map<String, Object> context) -
newConnection
- Parameters:
endPoint- theEndPointto link the newly created connection tocontext- the context data to create the connection- Returns:
- a new
Connection - Throws:
IOException- if the connection cannot be created
-
newConnection
protected Connection newConnection(Destination destination, Session session, HTTP2Connection connection) -
onClose
-