-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathRetrievePDSDemographicConfig.cs
More file actions
56 lines (42 loc) · 1.6 KB
/
RetrievePDSDemographicConfig.cs
File metadata and controls
56 lines (42 loc) · 1.6 KB
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
namespace NHS.CohortManager.DemographicServices;
using System.ComponentModel.DataAnnotations;
using Microsoft.Extensions.Configuration;
public class RetrievePDSDemographicConfig
{
[Required]
public required string RetrievePdsParticipantURL { get; set; }
[Required]
public required string DemographicDataServiceURL { get; set; }
[Required]
public required string Audience { get; set; }
[Required]
public required string KId { get; set; }
[Required]
public required string AuthTokenURL { get; set; }
[Required]
public required string ParticipantManagementTopic { get; set; }
[Required]
public required string ServiceBusConnectionString { get; set; }
public required bool UseFakePDSServices { get; set; } = false;
public string ClientId { get; set; } = string.Empty;
[ConfigurationKeyName("ServiceBusConnectionString_client_internal")]
public string? ServiceBusConnectionStringClientInternal { get; set; }
[Required]
public string EffectiveServiceBusConnectionString
{
get
{
if (!string.IsNullOrWhiteSpace(ServiceBusConnectionString))
{
return ServiceBusConnectionString;
}
if (!string.IsNullOrWhiteSpace(ServiceBusConnectionStringClientInternal))
{
return ServiceBusConnectionStringClientInternal;
}
throw new InvalidOperationException(
"Missing Service Bus connection string. " +
"Set ServiceBusConnectionString or ServiceBusConnectionString_client_internal.");
}
}
}