ServerPriorKnowledgeHandshaker

org.http4s.blaze.http.http2.server.ServerPriorKnowledgeHandshaker
final class ServerPriorKnowledgeHandshaker(localSettings: ImmutableHttp2Settings, flowStrategy: FlowStrategy, nodeBuilder: Int => LeafBuilder[StreamFrame]) extends PriorKnowledgeHandshaker[Unit]

Attributes

Source
ServerPriorKnowledgeHandshaker.scala
Graph
Supertypes
trait Tail[ByteBuffer]
trait Stage
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

override protected def handlePreface(): Future[ByteBuffer]

Handle the prior knowledge preface

Handle the prior knowledge preface

The preface is the magic string "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n" which is intended to cause HTTP/1.x connections to fail gracefully. For clients, this involves sending the magic string and for servers this consists of receiving the magic string. The return value of this function is any unconsumed inbound data.

Attributes

Definition Classes
Source
ServerPriorKnowledgeHandshaker.scala
override protected def handshakeComplete(remoteSettings: MutableHttp2Settings, data: ByteBuffer): Future[Unit]

Perform pipeline manipulations necessary upon successful handshaking

Perform pipeline manipulations necessary upon successful handshaking

Attributes

Definition Classes
Source
ServerPriorKnowledgeHandshaker.scala
override protected def stageStartup(): Unit

Start the stage, allocating resources etc.

Start the stage, allocating resources etc.

This method should not effect other stages by sending commands etc unless it creates them. It is not impossible that the stage will receive other commands besides Connected before this method is called. It is not impossible for this method to be called multiple times by misbehaving stages. It is therefore recommended that the method be idempotent.

Attributes

Definition Classes
Source
ServerPriorKnowledgeHandshaker.scala

Inherited methods

Attributes

Inherited from:
Tail
Source
Stages.scala

Write a collection of outbound messages to the pipeline with a timeout

Write a collection of outbound messages to the pipeline with a timeout

Attributes

Inherited from:
Tail
Source
Stages.scala

Write a collection of outbound messages to the pipeline

Write a collection of outbound messages to the pipeline

Attributes

Inherited from:
Tail
Source
Stages.scala

Write a single outbound message to the pipeline with a timeout

Write a single outbound message to the pipeline with a timeout

Attributes

Inherited from:
Tail
Source
Stages.scala

Write a single outbound message to the pipeline

Write a single outbound message to the pipeline

Attributes

Inherited from:
Tail
Source
Stages.scala

Attributes

Inherited from:
Tail
Source
Stages.scala
final def findOutboundStage[C <: Stage](clazz: Class[C]): Option[C]

Find the next outbound Stage of type C, if it exists.

Find the next outbound Stage of type C, if it exists.

Attributes

Inherited from:
Tail
Source
Stages.scala

Find the next outbound Stage with the given name, if it exists.

Find the next outbound Stage with the given name, if it exists.

Attributes

Inherited from:
Tail
Source
Stages.scala
final def handshake(): Future[T]

Perform the HTTP/2 prior knowledge handshake

Perform the HTTP/2 prior knowledge handshake

Attributes

Inherited from:
PriorKnowledgeHandshaker
Source
PriorKnowledgeHandshaker.scala

Handle basic startup and shutdown commands.

Handle basic startup and shutdown commands.

Value parameters

cmd

a command originating from the channel

Attributes

Inherited from:
Stage
Source
Stages.scala
override def name: String

Attributes

Definition Classes
Inherited from:
PriorKnowledgeHandshaker
Source
PriorKnowledgeHandshaker.scala

Replace all downstream Stages, including this Stage.

Replace all downstream Stages, including this Stage.

If this was a MidStage, its inbound element is notified via a Disconnected Command.

Attributes

Inherited from:
Tail
Source
Stages.scala

Insert the MidStage before this Stage

Insert the MidStage before this Stage

Attributes

Inherited from:
Tail
Source
Stages.scala
protected def stageShutdown(): Unit

Shuts down the stage, deallocating resources, etc.

Shuts down the stage, deallocating resources, etc.

It will be called when the stage receives a Disconnected command unless inboundCommand is overridden. This method should not send or Disconnected commands.

It is possible that this will not be called due to failure of other stages to propagate shutdown commands. Conversely, it is also possible for this to be called more than once due to the reception of multiple shutdown commands. It is therefore recommended that the method be idempotent.

Attributes

Inherited from:
Stage
Source
Stages.scala

Inherited fields

final protected val logger: Logger

Attributes

Inherited from:
Stage
Source
Stages.scala

Implicits

Inherited implicits

final implicit protected def ec: ExecutionContext

Attributes

Inherited from:
PriorKnowledgeHandshaker
Source
PriorKnowledgeHandshaker.scala