-
Notifications
You must be signed in to change notification settings - Fork 48
/
Copy pathInterfaces.cs
116 lines (98 loc) · 2.82 KB
/
Interfaces.cs
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
namespace ServiceControlInstaller.Engine
{
using System;
using System.Collections.Generic;
using Configuration.ServiceControl;
using Instances;
using NuGet.Versioning;
public interface ILogging
{
void Info(string message);
void Warn(string message);
void Error(string message);
}
public interface ITransportConfig
{
TransportInfo TransportPackage { get; }
string ConnectionString { get; set; }
}
public interface IPersistenceConfig
{
PersistenceManifest PersistenceManifest { get; }
}
public interface IHttpInstance
{
int Port { get; }
string HostName { get; }
}
public interface IServicePaths
{
string InstallPath { get; }
string LogPath { get; }
}
public interface IServiceControlPaths : IServicePaths
{
string DBPath { get; }
}
public interface IServiceAccount
{
string ServiceAccount { get; }
string ServiceAccountPwd { get; }
}
public interface IVersionInfo
{
SemanticVersion Version { get; }
}
public interface IURLInfo
{
string Url { get; }
string BrowsableUrl { get; }
}
public interface IServiceInstance : IServiceAccount, IVersionInfo
{
string Name { get; }
string InstanceName { get; }
string DisplayName { get; }
}
public interface IInstallable
{
bool SkipQueueCreation { get; }
}
public interface IMonitoringInstance : IServiceInstance, IServicePaths, ITransportConfig, IHttpInstance, IURLInfo, IInstallable
{
string ErrorQueue { get; }
}
public interface IDatabaseMaintenanceSupport : IVersionInfo
{
int? DatabaseMaintenancePort { get; }
}
public interface IServiceControlBaseInstance : IHttpInstance,
IDatabaseMaintenanceSupport,
IServiceInstance,
IServiceControlPaths,
IInstallable,
ITransportConfig,
IPersistenceConfig
{
bool EnableFullTextSearchOnBodies { get; }
}
public interface IServiceControlAuditInstance : IServiceControlBaseInstance
{
string AuditQueue { get; }
string AuditLogQueue { get; }
string VirtualDirectory { get; }
bool ForwardAuditMessages { get; }
TimeSpan AuditRetentionPeriod { get; }
string ServiceControlQueueAddress { get; set; }
}
public interface IServiceControlInstance : IServiceControlBaseInstance, IURLInfo
{
string ErrorQueue { get; }
string ErrorLogQueue { get; }
string VirtualDirectory { get; }
bool ForwardErrorMessages { get; }
TimeSpan ErrorRetentionPeriod { get; }
TimeSpan? AuditRetentionPeriod { get; set; }
List<RemoteInstanceSetting> RemoteInstances { get; }
}
}