AtClientSecretSharing.forClient constructor

AtClientSecretSharing.forClient(
  1. AtClient atClient, {
  2. SecretStorePersistence? persistence,
  3. ({Duration cacheExpiry})? publicKeyCacheSettings = (cacheExpiry: Duration(minutes: 5)),
})

The shared secret-sharing instance for atClient, created on first call. persistence and publicKeyCacheSettings take effect only on the creating call; later calls return the cached instance unchanged (one SecretStorePersistence per APKAM keypair — see SecretStore.persistence).

Implementation

factory AtClientSecretSharing.forClient(
  AtClient atClient, {
  SecretStorePersistence? persistence,
  ({
    Duration cacheExpiry
  })? publicKeyCacheSettings = const (cacheExpiry: Duration(minutes: 5)),
}) {
  var instance = _instances[atClient];
  if (instance == null) {
    instance = AtClientSecretSharing(atClient,
        publicKeyCacheSettings: publicKeyCacheSettings);
    instance.secretStore.persistence = persistence;
    _instances[atClient] = instance;
  }
  return instance;
}