ConnectionMigrationOptions

public class ConnectionMigrationOptions extends Object

A class configuring Cronet's connection migration functionality.

Connection migration stops open connections to servers from being destroyed when the client device switches its L4 connectivity (typically the IP address as a result of using a different network). This is particularly common with mobile devices losing wifi connectivity and switching to cellular data, or vice versa (a.k.a. the parking lot problem). QUIC uses connection identifiers which are independent of the underlying transport layer to make this possible. If the client connects to a new network and wants to preserve the existing connection, they can do so by using a connection identifier the server knows to be a continuation of the existing connection.

The features are only available for QUIC connections and the server needs to support connection migration.

Nested Class Summary

class ConnectionMigrationOptions.Builder Builder for ConnectionMigrationOptions
@interface ConnectionMigrationOptions.Experimental  

Public Constructor Summary

Public Method Summary

static ConnectionMigrationOptions.Builder
Boolean
Boolean
Boolean
Boolean
Long
Integer
Long
Integer
Boolean
Boolean

Inherited Method Summary

Public Constructors

public ConnectionMigrationOptions (ConnectionMigrationOptions.Builder builder)

Parameters
builder

Public Methods

public static ConnectionMigrationOptions.Builder builder ()

public Boolean getAllowNonDefaultNetworkUsage ()

public Boolean getAllowServerMigration ()

public Boolean getEnableDefaultNetworkMigration ()

public Boolean getEnablePathDegradationMigration ()

public Long getIdleMigrationPeriodSeconds ()

public Integer getMaxPathDegradingEagerMigrationsCount ()

public Long getMaxTimeOnNonDefaultNetworkSeconds ()

public Integer getMaxWriteErrorEagerMigrationsCount ()

public Boolean getMigrateIdleConnections ()

public Boolean getRetryPreHandshakeErrorsOnAlternateNetwork ()