< Summary

Information
Class: Elsa.Connections.Contracts.ConnectApiKeyConnectionRequest
Assembly: Elsa.Connections
File(s): /home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Connections/Contracts/IConnectionLifecycleService.cs
Line coverage
100%
Covered lines: 2
Uncovered lines: 0
Coverable lines: 2
Total lines: 71
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_TenantId()100%11100%
ToString()100%11100%

File(s)

/home/runner/work/elsa-core/elsa-core/src/modules/Elsa.Connections/Contracts/IConnectionLifecycleService.cs

#LineLine coverage
 1using System.Security.Claims;
 2using Elsa.Connections.Models;
 3
 4namespace Elsa.Connections.Contracts;
 5
 6public interface IConnectionLifecycleService
 7{
 8    Task<ConnectionLifecycleResult> ConnectAsync(ClaimsPrincipal principal, ConnectConnectionRequest request, Cancellati
 9
 10    Task<ConnectionAccessCredential> ResolveForUseAsync(ClaimsPrincipal principal, string tenantId, string environmentId
 11
 12    Task<ConnectionLifecycleResult> RefreshAsync(ClaimsPrincipal principal, string tenantId, string environmentId, strin
 13
 14    Task<ConnectionOffboardingOperationResult> DisconnectAsync(ClaimsPrincipal principal, string tenantId, string enviro
 15
 16    Task<ConnectionOffboardingOperationResult> RequestTokenRevocationAsync(ClaimsPrincipal principal, string tenantId, s
 17
 18    Task<ConnectionOffboardingOperationResult> RequestInstallationUninstallAsync(ClaimsPrincipal principal, string tenan
 19
 20    Task<ConnectionLifecycleResult> CleanupGenerationAsync(ClaimsPrincipal principal, string tenantId, string environmen
 21}
 22
 23/// <summary>Lifecycle operations for static credentials that have no provider refresh-token exchange.</summary>
 24public interface IStaticApiKeyLifecycleService
 25{
 26    Task<ConnectionLifecycleResult> ConnectApiKeyAsync(ClaimsPrincipal principal, ConnectApiKeyConnectionRequest request
 27
 28    Task<ConnectionLifecycleResult> ReplaceApiKeyAsync(ClaimsPrincipal principal, string tenantId, string environmentId,
 29}
 30
 31/// <summary>Host-owned background recovery contract. It receives no caller identity or caller-selectable system kind.</
 32public interface IConnectionLifecycleRecoveryService
 33{
 34    Task<ConnectionLifecycleResult> ReconcileAsync(string tenantId, string environmentId, string connectionId, Cancellat
 35
 36    Task<ConnectionOffboardingOperationResult> ReconcileOffboardingAsync(string tenantId, string environmentId, string c
 37
 38    Task<ConnectionLifecycleResult> RefreshAsync(string tenantId, string environmentId, string connectionId, Cancellatio
 39
 40    Task<ConnectionLifecycleResult> CleanupGenerationAsync(string tenantId, string environmentId, string connectionId, s
 41}
 42
 43public sealed record ConnectConnectionRequest(string TenantId, string EnvironmentId, string ProviderId, string ProviderA
 44
 14445public sealed record ConnectApiKeyConnectionRequest(string TenantId, string EnvironmentId, string ProviderId, string Pro
 46{
 147    public override string ToString() => "ConnectApiKeyConnectionRequest { Redacted = true }";
 48}
 49
 50/// <summary>Non-secret identity and lifecycle metadata returned to authorized connection managers.</summary>
 51public sealed record ConnectionLifecycleMetadata(
 52    string ConnectionId,
 53    string ProviderId,
 54    string ProviderAccountId,
 55    ConnectionStatus Status,
 56    long Revision,
 57    string? GenerationId);
 58
 59public sealed record ConnectionLifecycleResult(
 60    bool Succeeded,
 61    string? SafeErrorCode,
 62    long? Revision,
 63    string? ConnectionId = null,
 64    ConnectionLifecycleMetadata? Connection = null);
 65
 66public sealed record ConnectionOffboardingOperationResult(
 67    bool Accepted,
 68    string? SafeErrorCode,
 69    string? OperationId,
 70    ConnectionOffboardingOperationStatus? Status,
 71    long? ConnectionRevision);

Methods/Properties

get_TenantId()
ToString()