aboutsummaryrefslogtreecommitdiff
path: root/docker/crupest-api/CrupestApi/CrupestApi.Secrets/SecretModifyRequest.cs
blob: f632c6d69494c6e019eff87151c904406e79b603 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
namespace CrupestApi.Secrets;

public class SecretModifyRequest
{
    public SecretModifyRequest()
    {

    }

    public SecretModifyRequest(string? key, string? description)
    {
        Key = key;
        Description = description;
        SetExpireTime = false;
        ExpireTime = null;
    }

    public SecretModifyRequest(string? key, string? description, DateTime? expireTime, bool revoked)
    {
        if (revoked is not true)
        {
            throw new ArgumentException("Revoked can only be set to true.");
        }

        Key = key;
        Description = description;
        SetExpireTime = true;
        ExpireTime = expireTime;
        Revoked = revoked;
    }

    public string? Key { get; set; }
    public string? Description { get; set; }
    public bool SetExpireTime { get; set; }
    public DateTime? ExpireTime { get; set; }
    public bool Revoked { get; set; }
}