startConnect static method

Future<ConnectionTask<SecureSocket>> startConnect(
  1. dynamic host,
  2. int port, {
  3. SecurityContext? context,
  4. bool onBadCertificate(
    1. X509Certificate certificate
    )?,
  5. void keyLog(
    1. String line
    )?,
  6. List<String>? supportedProtocols,
})
override

Like connect, but returns a Future that completes with a ConnectionTask that can be cancelled if the SecureSocket is no longer needed.

Implementation

static Future<ConnectionTask<SecureSocket>> startConnect(
  host,
  int port, {
  SecurityContext? context,
  bool onBadCertificate(X509Certificate certificate)?,
  void keyLog(String line)?,
  List<String>? supportedProtocols,
}) {
  return RawSecureSocket.startConnect(
    host,
    port,
    context: context,
    onBadCertificate: onBadCertificate,
    keyLog: keyLog,
    supportedProtocols: supportedProtocols,
  ).then((rawState) {
    Future<SecureSocket> socket = rawState.socket.then(
      (rawSocket) => new SecureSocket._(rawSocket),
    );
    return new ConnectionTask<SecureSocket>._(socket, rawState._onCancel);
  });
}