Skip to content

Commit 34ee80c

Browse files
feature(#22): this commit introduces a handler to retrieve secrets from the realm
1 parent 495920d commit 34ee80c

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
namespace HttpsRichardy.Federation.Application.Handlers.Secret;
2+
3+
public sealed class FetchRealmSecretsHandler(ISecretCollection collection) :
4+
IDispatchHandler<FetchRealmSecretsParameters, Result<IReadOnlyCollection<SecretScheme>>>
5+
{
6+
public async Task<Result<IReadOnlyCollection<SecretScheme>>> HandleAsync(
7+
FetchRealmSecretsParameters parameters, CancellationToken cancellation = default)
8+
{
9+
var filters = SecretFilters.WithSpecifications()
10+
.WithRealm(parameters.RealmId)
11+
.Build();
12+
13+
var secrets = await collection.GetSecretsAsync(filters, cancellation);
14+
var schemes = secrets.Select(secret => secret.AsResponse())
15+
.ToList()
16+
.AsReadOnly();
17+
18+
return Result<IReadOnlyCollection<SecretScheme>>.Success(schemes);
19+
}
20+
}

0 commit comments

Comments
 (0)