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

Public Constructor Summary

Public Method Summary

Inherited Method Summary

Object
clone()
boolean
equals(Object arg0)
void
finalize()
final Class<?>
getClass()
int
hashCode()
final void
notify()
final void
notifyAll()
String
toString()
final void
wait(long arg0, int arg1)
final void
wait(long arg0)
final void
wait()

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 ()