orderedCandidateKeyIds method

List<String> orderedCandidateKeyIds(
  1. Map<String, Set<String>> secretsByType,
  2. String preferredKeyId
)

Ordered key ids to try for migration: preferred key first, then all other candidates once.

Implementation

List<String> orderedCandidateKeyIds(
  Map<String, Set<String>> secretsByType,
  String preferredKeyId,
) {
  final ordered = <String>[preferredKeyId];
  for (final keyIds in secretsByType.values) {
    for (final keyId in keyIds) {
      if (keyId != preferredKeyId && !ordered.contains(keyId)) {
        ordered.add(keyId);
      }
    }
  }
  return ordered;
}