Class AbstractHTTP2ServerConnectionFactory

java.lang.Object
org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.ContainerLifeCycle
org.eclipse.jetty.server.AbstractConnectionFactory
org.eclipse.jetty.http2.server.AbstractHTTP2ServerConnectionFactory
All Implemented Interfaces:
org.eclipse.jetty.server.ConnectionFactory, org.eclipse.jetty.util.component.Container, org.eclipse.jetty.util.component.Destroyable, org.eclipse.jetty.util.component.Dumpable, org.eclipse.jetty.util.component.Dumpable.DumpableContainer, org.eclipse.jetty.util.component.LifeCycle
Direct Known Subclasses:
HTTP2ServerConnectionFactory, RawHTTP2ServerConnectionFactory

@ManagedObject public abstract class AbstractHTTP2ServerConnectionFactory extends org.eclipse.jetty.server.AbstractConnectionFactory
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Deprecated, for removal: This API element is subject to removal in a future version.
    use SessionContainer instead

    Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

    org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener, org.eclipse.jetty.util.component.AbstractLifeCycle.StopException

    Nested classes/interfaces inherited from interface org.eclipse.jetty.server.ConnectionFactory

    org.eclipse.jetty.server.ConnectionFactory.Configuring, org.eclipse.jetty.server.ConnectionFactory.Detecting, org.eclipse.jetty.server.ConnectionFactory.Upgrading

    Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container

    org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.Listener

    Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable

    org.eclipse.jetty.util.component.Dumpable.DumpableContainer

    Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

    org.eclipse.jetty.util.component.LifeCycle.Listener
  • Field Summary

    Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

    FAILED, STARTED, STARTING, STOPPED, STOPPING

    Fields inherited from interface org.eclipse.jetty.util.component.Dumpable

    KEY
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
     
    AbstractHTTP2ServerConnectionFactory(org.eclipse.jetty.server.HttpConfiguration httpConfiguration)
     
    protected
    AbstractHTTP2ServerConnectionFactory(org.eclipse.jetty.server.HttpConfiguration httpConfiguration, String... protocols)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.eclipse.jetty.http2.FlowControlStrategy.Factory
     
    org.eclipse.jetty.server.HttpConfiguration
     
    int
     
    int
     
    int
     
    int
     
    int
     
    int
     
    int
     
    int
     
    org.eclipse.jetty.http2.RateControl.Factory
     
    long
     
    boolean
     
    boolean
     
    boolean
     
    org.eclipse.jetty.io.Connection
    newConnection(org.eclipse.jetty.server.Connector connector, org.eclipse.jetty.io.EndPoint endPoint)
     
    protected abstract org.eclipse.jetty.http2.api.server.ServerSessionListener
    newSessionListener(org.eclipse.jetty.server.Connector connector, org.eclipse.jetty.io.EndPoint endPoint)
     
    protected Map<Integer,Integer>
     
    void
    setConnectProtocolEnabled(boolean connectProtocolEnabled)
     
    void
    setFlowControlStrategyFactory(org.eclipse.jetty.http2.FlowControlStrategy.Factory flowControlStrategyFactory)
     
    void
    setInitialSessionRecvWindow(int initialSessionRecvWindow)
     
    void
    setInitialStreamRecvWindow(int initialStreamRecvWindow)
     
    void
    setMaxConcurrentStreams(int maxConcurrentStreams)
     
    void
    setMaxDecoderTableCapacity(int maxDecoderTableCapacity)
     
    void
    setMaxEncoderTableCapacity(int maxEncoderTableCapacity)
    Sets the limit for the encoder HPACK dynamic table capacity.
    void
    setMaxFrameSize(int maxFrameSize)
     
    void
    setMaxHeaderBlockFragment(int maxHeaderBlockFragment)
     
    void
    setMaxSettingsKeys(int maxSettingsKeys)
     
    void
    setRateControlFactory(org.eclipse.jetty.http2.RateControl.Factory rateControlFactory)
    Sets the factory that creates a per-connection RateControl object.
    void
    setStreamIdleTimeout(long streamIdleTimeout)
    Sets the HTTP/2 stream idle timeout.
    void
    setUseInputDirectByteBuffers(boolean useInputDirectByteBuffers)
     
    void
    setUseOutputDirectByteBuffers(boolean useOutputDirectByteBuffers)
     

    Methods inherited from class org.eclipse.jetty.server.AbstractConnectionFactory

    configure, findNextProtocol, findNextProtocol, getFactories, getInputBufferSize, getProtocol, getProtocols, setInputBufferSize, toString

    Methods inherited from class org.eclipse.jetty.util.component.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, updateBeans

    Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

    getEventListeners, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, setEventListeners, start, stop

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.eclipse.jetty.util.component.Container

    getCachedBeans, getEventListeners

    Methods inherited from interface org.eclipse.jetty.util.component.Dumpable

    dumpSelf

    Methods inherited from interface org.eclipse.jetty.util.component.Dumpable.DumpableContainer

    isDumpable
  • Constructor Details

    • AbstractHTTP2ServerConnectionFactory

      public AbstractHTTP2ServerConnectionFactory(@Name("config") org.eclipse.jetty.server.HttpConfiguration httpConfiguration)
    • AbstractHTTP2ServerConnectionFactory

      protected AbstractHTTP2ServerConnectionFactory(@Name("config") org.eclipse.jetty.server.HttpConfiguration httpConfiguration, @Name("protocols") String... protocols)
  • Method Details

    • getMaxEncoderTableCapacity

      @ManagedAttribute("The HPACK encoder dynamic table maximum capacity") public int getMaxEncoderTableCapacity()
    • setMaxEncoderTableCapacity

      public void setMaxEncoderTableCapacity(int maxEncoderTableCapacity)

      Sets the limit for the encoder HPACK dynamic table capacity.

      Setting this value to 0 disables the use of the dynamic table.

      Parameters:
      maxEncoderTableCapacity - The HPACK encoder dynamic table maximum capacity
    • getMaxDecoderTableCapacity

      @ManagedAttribute("The HPACK decoder dynamic table maximum capacity") public int getMaxDecoderTableCapacity()
    • setMaxDecoderTableCapacity

      public void setMaxDecoderTableCapacity(int maxDecoderTableCapacity)
    • getInitialSessionRecvWindow

      @ManagedAttribute("The initial size of session's flow control receive window") public int getInitialSessionRecvWindow()
    • setInitialSessionRecvWindow

      public void setInitialSessionRecvWindow(int initialSessionRecvWindow)
    • getInitialStreamRecvWindow

      @ManagedAttribute("The initial size of stream's flow control receive window") public int getInitialStreamRecvWindow()
    • setInitialStreamRecvWindow

      public void setInitialStreamRecvWindow(int initialStreamRecvWindow)
    • getMaxConcurrentStreams

      @ManagedAttribute("The max number of concurrent streams per session") public int getMaxConcurrentStreams()
    • setMaxConcurrentStreams

      public void setMaxConcurrentStreams(int maxConcurrentStreams)
    • getMaxHeaderBlockFragment

      @ManagedAttribute("The max header block fragment") public int getMaxHeaderBlockFragment()
    • setMaxHeaderBlockFragment

      public void setMaxHeaderBlockFragment(int maxHeaderBlockFragment)
    • getFlowControlStrategyFactory

      public org.eclipse.jetty.http2.FlowControlStrategy.Factory getFlowControlStrategyFactory()
    • setFlowControlStrategyFactory

      public void setFlowControlStrategyFactory(org.eclipse.jetty.http2.FlowControlStrategy.Factory flowControlStrategyFactory)
    • getStreamIdleTimeout

      @ManagedAttribute("The stream idle timeout in milliseconds") public long getStreamIdleTimeout()
    • setStreamIdleTimeout

      public void setStreamIdleTimeout(long streamIdleTimeout)

      Sets the HTTP/2 stream idle timeout.

      Value -1 disables the idle timeout, value 0 implies using the default idle timeout, positive values specify the idle timeout in milliseconds.

      Parameters:
      streamIdleTimeout - the idle timeout in milliseconds, 0 for the default, -1 to disable the idle timeout
    • getMaxFrameSize

      @ManagedAttribute("The max frame size in bytes") public int getMaxFrameSize()
    • setMaxFrameSize

      public void setMaxFrameSize(int maxFrameSize)
    • getMaxSettingsKeys

      @ManagedAttribute("The max number of keys in all SETTINGS frames") public int getMaxSettingsKeys()
    • setMaxSettingsKeys

      public void setMaxSettingsKeys(int maxSettingsKeys)
    • isConnectProtocolEnabled

      @ManagedAttribute("Whether CONNECT requests supports a protocol") public boolean isConnectProtocolEnabled()
    • setConnectProtocolEnabled

      public void setConnectProtocolEnabled(boolean connectProtocolEnabled)
    • getRateControlFactory

      public org.eclipse.jetty.http2.RateControl.Factory getRateControlFactory()
      Returns:
      the factory that creates RateControl objects
    • setRateControlFactory

      public void setRateControlFactory(org.eclipse.jetty.http2.RateControl.Factory rateControlFactory)

      Sets the factory that creates a per-connection RateControl object.

      Parameters:
      rateControlFactory - the factory that creates RateControl objects
    • isUseInputDirectByteBuffers

      @ManagedAttribute("Whether to use direct ByteBuffers for reading") public boolean isUseInputDirectByteBuffers()
    • setUseInputDirectByteBuffers

      public void setUseInputDirectByteBuffers(boolean useInputDirectByteBuffers)
    • isUseOutputDirectByteBuffers

      @ManagedAttribute("Whether to use direct ByteBuffers for writing") public boolean isUseOutputDirectByteBuffers()
    • setUseOutputDirectByteBuffers

      public void setUseOutputDirectByteBuffers(boolean useOutputDirectByteBuffers)
    • getHttpConfiguration

      public org.eclipse.jetty.server.HttpConfiguration getHttpConfiguration()
    • newSettings

      protected Map<Integer,Integer> newSettings()
    • newConnection

      public org.eclipse.jetty.io.Connection newConnection(org.eclipse.jetty.server.Connector connector, org.eclipse.jetty.io.EndPoint endPoint)
    • newSessionListener

      protected abstract org.eclipse.jetty.http2.api.server.ServerSessionListener newSessionListener(org.eclipse.jetty.server.Connector connector, org.eclipse.jetty.io.EndPoint endPoint)