Class Http2Connection

java.lang.Object
io.helidon.webserver.http2.Http2Connection
All Implemented Interfaces:
io.helidon.common.task.InterruptableTask<Void>, ServerConnection, Runnable, Callable<Void>

public class Http2Connection extends Object implements ServerConnection, io.helidon.common.task.InterruptableTask<Void>
HTTP/2 server connection. A single connection is created between a client and a server. A single connection serves multiple streams.
  • Method Details

    • handle

      public void handle(Semaphore requestSemaphore) throws InterruptedException
      Specified by:
      handle in interface ServerConnection
      Throws:
      InterruptedException
    • clientSettings

      public void clientSettings(Http2Settings http2Settings)
      Client settings, obtained from SETTINGS frame or HTTP/2 upgrade request.
      Parameters:
      http2Settings - client settings to use
    • upgradeConnectionData

      public void upgradeConnectionData(io.helidon.http.HttpPrologue prologue, Http2Headers headers)
      Connection headers from an upgrade request from HTTP/1.1.
      Parameters:
      prologue - prologue of the HTTP/2 request
      headers - headers to use for first stream (obtained from original HTTP/1.1 request)
    • expectPreface

      public void expectPreface()
      Expect connection preface (prior knowledge).
    • canInterrupt

      public boolean canInterrupt()
      Specified by:
      canInterrupt in interface io.helidon.common.task.InterruptableTask<Void>
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • idleTime

      public Duration idleTime()
      Specified by:
      idleTime in interface ServerConnection
    • close

      public void close(boolean interrupt)
      Specified by:
      close in interface ServerConnection