Class PersistentConnection
- java.lang.Object
-
- akka.http.impl.engine.http2.client.PersistentConnection
-
public class PersistentConnection extends java.lang.Object
INTERNAL API
-
-
Constructor Summary
Constructors Constructor Description PersistentConnection()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static akka.stream.scaladsl.Flow<HttpRequest,HttpResponse,akka.NotUsed>
managedConnection(akka.stream.scaladsl.Flow<HttpRequest,HttpResponse,scala.concurrent.Future<Http.OutgoingConnection>> connectionFlow, Http2ClientSettings settings)
Wraps a connection flow with transparent reconnection support.
-
-
-
Method Detail
-
managedConnection
public static akka.stream.scaladsl.Flow<HttpRequest,HttpResponse,akka.NotUsed> managedConnection(akka.stream.scaladsl.Flow<HttpRequest,HttpResponse,scala.concurrent.Future<Http.OutgoingConnection>> connectionFlow, Http2ClientSettings settings)
Wraps a connection flow with transparent reconnection support.Backpressure logic:
* when unconnected wait for pull on response side to pull request side * when first request comes in, establish connection and send initial request to connection * connection then drives backpressure logic, i.e. * it may pull regardless of outer demand * if it pulls and runs multiple requests concurrently, it must also buffer them internally * this stage will only ever buffer requests directly in the incoming request slot * outgoing responses are never buffer but we pull the connection only if there is outer demand
Error reporting logic when connection breaks while requests are running: * generate error responses with 502 status code * custom attribute contains internal error information
- Parameters:
connectionFlow
- (undocumented)settings
- (undocumented)- Returns:
- (undocumented)
-
-