Top Description Fields Constructors Methods
org.eclipse.jetty.quic.server

public Class ServerQuicSession

extends QuicSession
implements Expirable
Class Inheritance
All Implemented Interfaces
org.eclipse.jetty.io.CyclicTimeouts.Expirable
Imports
java.io.IOException, java.net.SocketAddress, java.nio.ByteBuffer, java.util.Map, java.util.concurrent.Executor, .TimeUnit, org.eclipse.jetty.io.ByteBufferPool, .Connection, .CyclicTimeouts, .RuntimeIOException, org.eclipse.jetty.quic.common.ProtocolSession, .QuicConnection, .QuicSession, .QuicStreamEndPoint, org.eclipse.jetty.quic.quiche.QuicheConnection, org.eclipse.jetty.server.ConnectionFactory, .Connector, org.eclipse.jetty.util.NanoTime, org.eclipse.jetty.util.thread.Scheduler

The server specific implementation of QuicSession.

When asked to create a QUIC stream, it creates a QuicStreamEndPoint with an associated Connection created from the ConnectionFactory, retrieved from the server Connector, correspondent to the protocol negotiated with the client (or the default protocol).

Field Summary

Modifier and TypeField and Description
private final Connector
private long

Constructor Summary

AccessConstructor and Description
public
ServerQuicSession(Executor executor, Scheduler scheduler, ByteBufferPool bufferPool, QuicheConnection quicheConnection, QuicConnection connection, SocketAddress remoteAddress, Connector connector)

Method Summary

Modifier and TypeMethod and Description
protected ProtocolSession
private ConnectionFactory
findConnectionFactory(String negotiatedProtocol)

public void
public long
getExpireNanoTime()

Implements org.eclipse.jetty.io.CyclicTimeouts.Expirable.getExpireNanoTime.

Returns the expiration time in nanoseconds.

public ServerQuicConnection
public Connection
private Connection
private void
public boolean
public Runnable
public void
Inherited from org.eclipse.jetty.quic.common.QuicSession:
doStartdoStopdumpfillflushgetByteBufferPoolgetConnectionIdgetExecutorgetIdleTimeoutgetLocalAddressgetMaxLocalStreamsgetNegotiatedProtocolgetOrCreateStreamEndPointgetProtocolSessiongetQuicStreamEndPointsgetRemoteAddressgetRemoteCloseInfogetSchedulergetWindowCapacitygetWindowCapacityinwardCloseisConnectionEstablishedisFinishednewStreamIdonFailureoutwardClosepollTaskremovesetConnectionIdshutdownshutdownInputshutdownOutputtoString

Field Detail

connectorback to summary
private final Connector connector
expireNanoTimeback to summary
private long expireNanoTime

Constructor Detail

ServerQuicSessionback to summary
public ServerQuicSession(Executor executor, Scheduler scheduler, ByteBufferPool bufferPool, QuicheConnection quicheConnection, QuicConnection connection, SocketAddress remoteAddress, Connector connector)

Method Detail

createProtocolSessionback to summary
protected ProtocolSession createProtocolSession()

Implements abstract org.eclipse.jetty.quic.common.QuicSession.createProtocolSession.

Annotations
@Override
findConnectionFactoryback to summary
private ConnectionFactory findConnectionFactory(String negotiatedProtocol)
flushback to summary
public void flush()

Overrides org.eclipse.jetty.quic.common.QuicSession.flush.

Annotations
@Override
getExpireNanoTimeback to summary
public long getExpireNanoTime()

Implements org.eclipse.jetty.io.CyclicTimeouts.Expirable.getExpireNanoTime.

Doc from org.eclipse.jetty.io.CyclicTimeouts.Expirable.getExpireNanoTime.

Returns the expiration time in nanoseconds.

The value to return must be calculated taking into account the current nanoTime, for example:

expireNanoTime = NanoTime.now() + timeoutNanos

Returning Long#MAX_VALUE indicates that this entity does not expire.

Annotations
@Override
getQuicConnectionback to summary
public ServerQuicConnection getQuicConnection()

Overrides org.eclipse.jetty.quic.common.QuicSession.getQuicConnection.

Annotations
@Override
newConnectionback to summary
public Connection newConnection(QuicStreamEndPoint endPoint)

Implements abstract org.eclipse.jetty.quic.common.QuicSession.newConnection.

Annotations
@Override
newConnectionback to summary
private Connection newConnection(ConnectionFactory factory, QuicStreamEndPoint endPoint)
notIdleback to summary
private void notIdle()
onIdleTimeoutback to summary
public boolean onIdleTimeout()

Overrides org.eclipse.jetty.quic.common.QuicSession.onIdleTimeout.

Annotations
@Override
processback to summary
public Runnable process(SocketAddress remoteAddress, ByteBuffer cipherBufferIn) throws IOException

Overrides org.eclipse.jetty.quic.common.QuicSession.process.

Annotations
@Override
setIdleTimeoutback to summary
public void setIdleTimeout(long idleTimeout)

Overrides org.eclipse.jetty.quic.common.QuicSession.setIdleTimeout.

Annotations
@Override