Codemaru 1.0.0.0
QR 코드, 모바일 랜딩 페이지, vCard 연락처 저장과 명함 디자인을 한 화면에서 제공하는 디지털 명함 서비스입니다.
로딩중...
검색중...
일치하는것 없음
Codemaru.ViewModels.CertificateMonitorViewModel 클래스 참조sealed

더 자세히 ...

Codemaru.ViewModels.CertificateMonitorViewModel에 대한 상속 다이어그램 :
Codemaru.ViewModels.CertificateMonitorViewModel에 대한 협력 다이어그램:

Public 멤버 함수

 CertificateMonitorViewModel (IOptions< CertificateMonitorOptions > options, ICertificateMonitorService certificateMonitorService, IWinAcmeService winAcmeService, INginxReloadService nginxReloadService, ICertificateSettingsWriter settingsWriter)

속성

string CertificateDirectory [get, set]
string WacsPath [get, set]
string NginxPath [get, set]
string NginxWorkingDirectory [get, set]
string PfxPassword [get, set]
int WarningDays [get, set]
int CriticalDays [get, set]
int MaxCommandOutputChars [get, set]
string StatusMessage [get, private set]
string CertificatePath [get, private set]
string Subject [get, private set]
string Issuer [get, private set]
string NotAfterText [get, private set]
string RemainingDaysText [get, private set]
string HealthText [get, private set]
Brush HealthBrush [get, private set]
string TaskName [get, private set]
string TaskState [get, private set]
string LastRunTime [get, private set]
string NextRunTime [get, private set]
string LastTaskResult [get, private set]
string CommandOutput [get, private set]
ICommand RefreshCommand [get]
ICommand CheckRenewalTaskCommand [get]
ICommand RunRenewCommand [get]
ICommand ForceRenewCommand [get]
ICommand ReloadNginxCommand [get]
ICommand SaveSettingsCommand [get]

이벤트

PropertyChangedEventHandler? PropertyChanged

Private 멤버 함수

async Task RefreshAsync ()
async Task CheckRenewalTaskAsync ()
async Task RunRenewAsync (bool force)
async Task ReloadNginxAsync ()
async Task SaveSettingsAsync ()
void ApplyProcessResult (string actionName, ProcessExecutionResult result)
CertificateMonitorOptions CreateOptions ()
bool SetField< T > (ref T field, T value, [CallerMemberName] string? propertyName=null)
void OnPropertyChanged ([CallerMemberName] string? propertyName=null)

정적 Private 멤버 함수

static CertificateMonitorOptions CloneOptions (CertificateMonitorOptions source)
static string FormatTaskName (WinAcmeTaskInfo task)
static Brush ResolveBrush (CertificateHealthState state)

Private 속성

readonly ICertificateMonitorService _certificateMonitorService
readonly IWinAcmeService _winAcmeService
readonly INginxReloadService _nginxReloadService
readonly ICertificateSettingsWriter _settingsWriter
readonly CertificateMonitorOptions _baseOptions
string _certificateDirectory
string _wacsPath
string _nginxPath
string _nginxWorkingDirectory
string _statusMessage = "Certificate monitor is ready."
string _certificatePath = string.Empty
string _subject = string.Empty
string _issuer = string.Empty
string _notAfterText = "-"
string _remainingDaysText = "-"
string _healthText = "Unknown"
Brush _healthBrush = Brushes.Gray
string _taskName = "-"
string _taskState = "-"
string _lastRunTime = "-"
string _nextRunTime = "-"
string _lastTaskResult = "-"
string _commandOutput = string.Empty

상세한 설명

인증서 상태, win-acme 갱신, nginx reload를 제어하는 ViewModel입니다.

CertificateMonitorViewModel.cs 파일의 20 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ CertificateMonitorViewModel()

Codemaru.ViewModels.CertificateMonitorViewModel.CertificateMonitorViewModel ( IOptions< CertificateMonitorOptions > options,
ICertificateMonitorService certificateMonitorService,
IWinAcmeService winAcmeService,
INginxReloadService nginxReloadService,
ICertificateSettingsWriter settingsWriter )
inline

CertificateMonitorViewModel 클래스의 새 인스턴스를 초기화합니다.

매개변수
options인증서 모니터링 옵션입니다.
certificateMonitorService인증서 상태 조회 서비스입니다.
winAcmeServicewin-acme 서비스입니다.
nginxReloadServicenginx reload 서비스입니다.
settingsWriter로컬 설정 저장 서비스입니다.
예외
ArgumentNullException필수 입력 인자 중 하나가 null인 경우 발생합니다.

CertificateMonitorViewModel.cs 파일의 286 번째 라인에서 정의되었습니다.

292 {
293 CertificateMonitorOptions value = options?.Value ?? throw new ArgumentNullException(nameof(options));
294 _certificateMonitorService = certificateMonitorService ?? throw new ArgumentNullException(nameof(certificateMonitorService));
295 _winAcmeService = winAcmeService ?? throw new ArgumentNullException(nameof(winAcmeService));
296 _nginxReloadService = nginxReloadService ?? throw new ArgumentNullException(nameof(nginxReloadService));
297 _settingsWriter = settingsWriter ?? throw new ArgumentNullException(nameof(settingsWriter));
298 _baseOptions = CloneOptions(value);
299
300 _certificateDirectory = value.CertificateDirectory;
301 _wacsPath = value.WacsPath;
302 _nginxPath = value.NginxPath;
303 _nginxWorkingDirectory = value.NginxWorkingDirectory;
304 WarningDays = value.WarningDays;
305 CriticalDays = value.CriticalDays;
306 MaxCommandOutputChars = value.MaxCommandOutputChars;
307 PfxPassword = value.PfxPassword ?? string.Empty;
308
309 RefreshCommand = new AsyncRelayCommand(RefreshAsync);
310 CheckRenewalTaskCommand = new AsyncRelayCommand(CheckRenewalTaskAsync);
311 RunRenewCommand = new AsyncRelayCommand(() => RunRenewAsync(force: false));
312 ForceRenewCommand = new AsyncRelayCommand(() => RunRenewAsync(force: true));
313 ReloadNginxCommand = new AsyncRelayCommand(ReloadNginxAsync);
314 SaveSettingsCommand = new AsyncRelayCommand(SaveSettingsAsync);
315 }

다음을 참조함 : _baseOptions, _certificateDirectory, _certificateMonitorService, _nginxPath, _nginxReloadService, _nginxWorkingDirectory, _settingsWriter, _wacsPath, _winAcmeService, Codemaru.Options.CertificateMonitorOptions.CertificateDirectory, CheckRenewalTaskAsync(), CheckRenewalTaskCommand, CloneOptions(), Codemaru.Options.CertificateMonitorOptions.CriticalDays, CriticalDays, ForceRenewCommand, Codemaru.Options.CertificateMonitorOptions.MaxCommandOutputChars, MaxCommandOutputChars, Codemaru.Options.CertificateMonitorOptions.NginxPath, Codemaru.Options.CertificateMonitorOptions.NginxWorkingDirectory, PfxPassword, RefreshAsync(), RefreshCommand, ReloadNginxAsync(), ReloadNginxCommand, RunRenewAsync(), RunRenewCommand, SaveSettingsAsync(), SaveSettingsCommand, Codemaru.Options.CertificateMonitorOptions.WacsPath, Codemaru.Options.CertificateMonitorOptions.WarningDays, WarningDays.

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

멤버 함수 문서화

◆ ApplyProcessResult()

void Codemaru.ViewModels.CertificateMonitorViewModel.ApplyProcessResult ( string actionName,
ProcessExecutionResult result )
inlineprivate

Apply Process Result 작업을 수행합니다.

매개변수
actionNameaction Name에 사용할 string 값입니다.
resultresult에 사용할 ProcessExecutionResult 값입니다.

CertificateMonitorViewModel.cs 파일의 846 번째 라인에서 정의되었습니다.

847 {
848 StatusMessage = $"{actionName}: {result.Message}";
849 CommandOutput = string.Join(Environment.NewLine, new[]
850 {
851 $"[{actionName}] ExitCode={result.ExitCode}, Success={result.IsSuccess}",
852 result.Output,
853 result.Error
854 }.Where(line => !string.IsNullOrWhiteSpace(line)));
855 }

다음을 참조함 : CommandOutput, StatusMessage.

다음에 의해서 참조됨 : ReloadNginxAsync(), RunRenewAsync().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ CheckRenewalTaskAsync()

async Task Codemaru.ViewModels.CertificateMonitorViewModel.CheckRenewalTaskAsync ( )
inlineprivate

Check Renewal Task Async 작업을 수행합니다.

반환값
Check Renewal Task Async 작업에서 생성한 Task 결과입니다.

CertificateMonitorViewModel.cs 파일의 727 번째 라인에서 정의되었습니다.

728 {
729 WinAcmeTaskInfo task = await _winAcmeService
730 .GetRenewalTaskAsync(CancellationToken.None)
731 .ConfigureAwait(true);
732
733 TaskName = FormatTaskName(task);
734 TaskState = string.IsNullOrWhiteSpace(task.State) ? "-" : task.State;
735 LastRunTime = string.IsNullOrWhiteSpace(task.LastRunTime) ? "-" : task.LastRunTime;
736 NextRunTime = string.IsNullOrWhiteSpace(task.NextRunTime) ? "-" : task.NextRunTime;
737 LastTaskResult = string.IsNullOrWhiteSpace(task.LastTaskResult) ? "-" : task.LastTaskResult;
738 StatusMessage = task.Message;
739 }

다음을 참조함 : _winAcmeService, FormatTaskName(), Codemaru.Models.Certificates.WinAcmeTaskInfo.LastRunTime, LastRunTime, Codemaru.Models.Certificates.WinAcmeTaskInfo.LastTaskResult, LastTaskResult, Codemaru.Models.Certificates.WinAcmeTaskInfo.Message, Codemaru.Models.Certificates.WinAcmeTaskInfo.NextRunTime, NextRunTime, Codemaru.Models.Certificates.WinAcmeTaskInfo.State, StatusMessage, TaskName, TaskState.

다음에 의해서 참조됨 : CertificateMonitorViewModel().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ CloneOptions()

CertificateMonitorOptions Codemaru.ViewModels.CertificateMonitorViewModel.CloneOptions ( CertificateMonitorOptions source)
inlinestaticprivate

Clone Options 작업을 수행합니다.

매개변수
sourcesource에 사용할 CertificateMonitorOptions 값입니다.
반환값
Clone Options 작업에서 생성한 CertificateMonitorOptions 결과입니다.

CertificateMonitorViewModel.cs 파일의 916 번째 라인에서 정의되었습니다.

917 {
918 return new CertificateMonitorOptions
919 {
920 CertificateDirectory = source.CertificateDirectory,
921 CertificateFilePatterns = source.CertificateFilePatterns.ToArray(),
922 PfxPassword = source.PfxPassword,
923 WacsPath = source.WacsPath,
924 NginxPath = source.NginxPath,
925 NginxWorkingDirectory = source.NginxWorkingDirectory,
926 NginxReloadArguments = source.NginxReloadArguments,
927 WarningDays = source.WarningDays,
928 CriticalDays = source.CriticalDays,
929 MaxCommandOutputChars = source.MaxCommandOutputChars
930 };
931 }

다음을 참조함 : Codemaru.Options.CertificateMonitorOptions.CertificateDirectory, CertificateDirectory, Codemaru.Options.CertificateMonitorOptions.CertificateFilePatterns, Codemaru.Options.CertificateMonitorOptions.CriticalDays, CriticalDays, MaxCommandOutputChars, Codemaru.Options.CertificateMonitorOptions.NginxPath, NginxPath, Codemaru.Options.CertificateMonitorOptions.NginxReloadArguments, Codemaru.Options.CertificateMonitorOptions.NginxWorkingDirectory, NginxWorkingDirectory, Codemaru.Options.CertificateMonitorOptions.PfxPassword, PfxPassword, Codemaru.Options.CertificateMonitorOptions.WacsPath, WacsPath, Codemaru.Options.CertificateMonitorOptions.WarningDays, WarningDays.

다음에 의해서 참조됨 : CertificateMonitorViewModel().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ CreateOptions()

CertificateMonitorOptions Codemaru.ViewModels.CertificateMonitorViewModel.CreateOptions ( )
inlineprivate

Options 값을 생성합니다.

반환값
Create Options 작업에서 생성한 CertificateMonitorOptions 결과입니다.

CertificateMonitorViewModel.cs 파일의 873 번째 라인에서 정의되었습니다.

874 {
875 return new CertificateMonitorOptions
876 {
877 CertificateDirectory = CertificateDirectory,
878 CertificateFilePatterns = _baseOptions.CertificateFilePatterns.ToArray(),
879 PfxPassword = string.IsNullOrWhiteSpace(PfxPassword) ? null : PfxPassword,
880 WacsPath = WacsPath,
881 NginxPath = NginxPath,
882 NginxWorkingDirectory = NginxWorkingDirectory,
883 NginxReloadArguments = string.IsNullOrWhiteSpace(_baseOptions.NginxReloadArguments)
884 ? "-s reload"
885 : _baseOptions.NginxReloadArguments,
886 WarningDays = Math.Max(1, WarningDays),
887 CriticalDays = Math.Max(1, CriticalDays),
888 MaxCommandOutputChars = MaxCommandOutputChars <= 0 ? 6000 : MaxCommandOutputChars
889 };
890 }

다음을 참조함 : _baseOptions, CertificateDirectory, CriticalDays, MaxCommandOutputChars, NginxPath, NginxWorkingDirectory, PfxPassword, WacsPath, WarningDays.

다음에 의해서 참조됨 : RefreshAsync(), ReloadNginxAsync(), RunRenewAsync(), SaveSettingsAsync().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ FormatTaskName()

string Codemaru.ViewModels.CertificateMonitorViewModel.FormatTaskName ( WinAcmeTaskInfo task)
inlinestaticprivate

Format Task Name 작업을 수행합니다.

매개변수
tasktask에 사용할 WinAcmeTaskInfo 값입니다.
반환값
Format Task Name 작업에서 생성한 string 결과입니다.

CertificateMonitorViewModel.cs 파일의 957 번째 라인에서 정의되었습니다.

958 {
959 if (string.IsNullOrWhiteSpace(task.TaskName))
960 {
961 return "-";
962 }
963
964 if (string.IsNullOrWhiteSpace(task.TaskPath) || task.TaskPath == @"\")
965 {
966 return task.TaskName;
967 }
968
969 return $"{task.TaskPath}{task.TaskName}";
970 }

다음을 참조함 : Codemaru.Models.Certificates.WinAcmeTaskInfo.TaskName, Codemaru.Models.Certificates.WinAcmeTaskInfo.TaskPath.

다음에 의해서 참조됨 : CheckRenewalTaskAsync().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ OnPropertyChanged()

void Codemaru.ViewModels.CertificateMonitorViewModel.OnPropertyChanged ( [CallerMemberName] string? propertyName = null)
inlineprivate

Property Changed 이벤트 또는 상태 변경을 처리합니다.

매개변수
propertyNameproperty Name에 사용할 string? 값입니다.

CertificateMonitorViewModel.cs 파일의 1085 번째 라인에서 정의되었습니다.

1086 {
1087 PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
1088 }

다음을 참조함 : PropertyChanged.

다음에 의해서 참조됨 : SetField< T >().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ RefreshAsync()

async Task Codemaru.ViewModels.CertificateMonitorViewModel.RefreshAsync ( )
inlineprivate

Refresh Async 작업을 수행합니다.

반환값
Refresh Async 작업에서 생성한 Task 결과입니다.

CertificateMonitorViewModel.cs 파일의 695 번째 라인에서 정의되었습니다.

696 {
697 CertificateStatusInfo status = await _certificateMonitorService
698 .GetStatusAsync(CreateOptions(), CancellationToken.None)
699 .ConfigureAwait(true);
700
701 CertificatePath = string.IsNullOrWhiteSpace(status.CertificatePath) ? "-" : status.CertificatePath;
702 Subject = string.IsNullOrWhiteSpace(status.Subject) ? "-" : status.Subject;
703 Issuer = string.IsNullOrWhiteSpace(status.Issuer) ? "-" : status.Issuer;
704 NotAfterText = status.NotAfter?.ToString("yyyy-MM-dd HH:mm:ss") ?? "-";
705 RemainingDaysText = status.RemainingDays.HasValue ? $"{status.RemainingDays.Value} days" : "-";
706 HealthText = status.State.ToString();
707 HealthBrush = ResolveBrush(status.State);
708 StatusMessage = status.Message;
709 }

다음을 참조함 : _certificateMonitorService, Codemaru.Models.Certificates.CertificateStatusInfo.CertificatePath, CertificatePath, CreateOptions(), HealthBrush, HealthText, Codemaru.Models.Certificates.CertificateStatusInfo.Issuer, Issuer, Codemaru.Models.Certificates.CertificateStatusInfo.Message, Codemaru.Models.Certificates.CertificateStatusInfo.NotAfter, NotAfterText, RemainingDaysText, ResolveBrush(), Codemaru.Models.Certificates.CertificateStatusInfo.State, StatusMessage, Codemaru.Models.Certificates.CertificateStatusInfo.Subject, Subject.

다음에 의해서 참조됨 : CertificateMonitorViewModel(), RunRenewAsync().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ ReloadNginxAsync()

async Task Codemaru.ViewModels.CertificateMonitorViewModel.ReloadNginxAsync ( )
inlineprivate

Reload Nginx Async 작업을 수행합니다.

반환값
Reload Nginx Async 작업에서 생성한 Task 결과입니다.

CertificateMonitorViewModel.cs 파일의 791 번째 라인에서 정의되었습니다.

792 {
793 ProcessExecutionResult result = await _nginxReloadService
794 .ReloadAsync(CreateOptions(), CancellationToken.None)
795 .ConfigureAwait(true);
796
797 ApplyProcessResult("Nginx reload", result);
798 }

다음을 참조함 : _nginxReloadService, ApplyProcessResult(), CreateOptions().

다음에 의해서 참조됨 : CertificateMonitorViewModel().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ ResolveBrush()

Brush Codemaru.ViewModels.CertificateMonitorViewModel.ResolveBrush ( CertificateHealthState state)
inlinestaticprivate

Resolve Brush 작업을 수행합니다.

매개변수
statestate에 사용할 CertificateHealthState 값입니다.
반환값
Resolve Brush 작업에서 생성한 Brush 결과입니다.

CertificateMonitorViewModel.cs 파일의 996 번째 라인에서 정의되었습니다.

997 {
998 return state switch
999 {
1000 CertificateHealthState.Ok => Brushes.ForestGreen,
1001 CertificateHealthState.Warning => Brushes.DarkOrange,
1002 CertificateHealthState.Critical => Brushes.OrangeRed,
1003 CertificateHealthState.Expired => Brushes.Firebrick,
1004 CertificateHealthState.Error => Brushes.Firebrick,
1005 _ => Brushes.Gray
1006 };
1007 }

다음을 참조함 : Codemaru.Models.Certificates.Critical, Codemaru.Models.Certificates.Error, Codemaru.Models.Certificates.Expired, Codemaru.Models.Certificates.Ok, Codemaru.Models.Certificates.Warning.

다음에 의해서 참조됨 : RefreshAsync().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ RunRenewAsync()

async Task Codemaru.ViewModels.CertificateMonitorViewModel.RunRenewAsync ( bool force)
inlineprivate

Run Renew Async 작업을 수행합니다.

매개변수
forceforce에 사용할 bool 값입니다.
반환값
Run Renew Async 작업에서 생성한 Task 결과입니다.

CertificateMonitorViewModel.cs 파일의 765 번째 라인에서 정의되었습니다.

766 {
767 ProcessExecutionResult result = await _winAcmeService
768 .RunRenewAsync(CreateOptions(), force, CancellationToken.None)
769 .ConfigureAwait(true);
770
771 ApplyProcessResult(force ? "Force renew" : "Renew", result);
772 await RefreshAsync().ConfigureAwait(true);
773 }

다음을 참조함 : _winAcmeService, ApplyProcessResult(), CreateOptions(), RefreshAsync().

다음에 의해서 참조됨 : CertificateMonitorViewModel().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SaveSettingsAsync()

async Task Codemaru.ViewModels.CertificateMonitorViewModel.SaveSettingsAsync ( )
inlineprivate

Settings Async 데이터를 저장합니다.

반환값
Save Settings Async 작업에서 생성한 Task 결과입니다.

CertificateMonitorViewModel.cs 파일의 816 번째 라인에서 정의되었습니다.

817 {
818 await _settingsWriter.SaveAsync(CreateOptions(), CancellationToken.None).ConfigureAwait(true);
819 StatusMessage = "Certificate settings saved to appsettings.local.json.";
820 }

다음을 참조함 : _settingsWriter, CreateOptions(), StatusMessage.

다음에 의해서 참조됨 : CertificateMonitorViewModel().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:
이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ SetField< T >()

bool Codemaru.ViewModels.CertificateMonitorViewModel.SetField< T > ( ref T field,
T value,
[CallerMemberName] string? propertyName = null )
inlineprivate

Field 값을 설정합니다.

템플릿 파라메터
TT 형식 매개변수입니다.
매개변수
fieldfield에 사용할 T 값입니다.
value적용할 값입니다.
propertyNameproperty Name에 사용할 string? 값입니다.
반환값
Set Field 조건이 충족되면 true이고, 그렇지 않으면 false입니다.

CertificateMonitorViewModel.cs 파일의 1057 번째 라인에서 정의되었습니다.

1058 {
1059 if (EqualityComparer<T>.Default.Equals(field, value))
1060 {
1061 return false;
1062 }
1063
1064 field = value;
1065 OnPropertyChanged(propertyName);
1066 return true;
1067 }

다음을 참조함 : OnPropertyChanged().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

멤버 데이터 문서화

◆ _baseOptions

readonly CertificateMonitorOptions Codemaru.ViewModels.CertificateMonitorViewModel._baseOptions
private

base Options 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 66 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel(), CreateOptions().

◆ _certificateDirectory

string Codemaru.ViewModels.CertificateMonitorViewModel._certificateDirectory
private

certificate Directory 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 75 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ _certificateMonitorService

readonly ICertificateMonitorService Codemaru.ViewModels.CertificateMonitorViewModel._certificateMonitorService
private

certificate Monitor Service 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 30 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel(), RefreshAsync().

◆ _certificatePath

string Codemaru.ViewModels.CertificateMonitorViewModel._certificatePath = string.Empty
private

certificate Path 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 120 번째 라인에서 정의되었습니다.

◆ _commandOutput

string Codemaru.ViewModels.CertificateMonitorViewModel._commandOutput = string.Empty
private

command Output 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 228 번째 라인에서 정의되었습니다.

◆ _healthBrush

Brush Codemaru.ViewModels.CertificateMonitorViewModel._healthBrush = Brushes.Gray
private

health Brush 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 174 번째 라인에서 정의되었습니다.

◆ _healthText

string Codemaru.ViewModels.CertificateMonitorViewModel._healthText = "Unknown"
private

health Text 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 165 번째 라인에서 정의되었습니다.

◆ _issuer

string Codemaru.ViewModels.CertificateMonitorViewModel._issuer = string.Empty
private

issuer 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 138 번째 라인에서 정의되었습니다.

◆ _lastRunTime

string Codemaru.ViewModels.CertificateMonitorViewModel._lastRunTime = "-"
private

last Run Time 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 201 번째 라인에서 정의되었습니다.

◆ _lastTaskResult

string Codemaru.ViewModels.CertificateMonitorViewModel._lastTaskResult = "-"
private

last Task Result 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 219 번째 라인에서 정의되었습니다.

◆ _nextRunTime

string Codemaru.ViewModels.CertificateMonitorViewModel._nextRunTime = "-"
private

next Run Time 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 210 번째 라인에서 정의되었습니다.

◆ _nginxPath

string Codemaru.ViewModels.CertificateMonitorViewModel._nginxPath
private

nginx Path 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 93 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ _nginxReloadService

readonly INginxReloadService Codemaru.ViewModels.CertificateMonitorViewModel._nginxReloadService
private

nginx Reload Service 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 48 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel(), ReloadNginxAsync().

◆ _nginxWorkingDirectory

string Codemaru.ViewModels.CertificateMonitorViewModel._nginxWorkingDirectory
private

nginx Working Directory 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 102 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ _notAfterText

string Codemaru.ViewModels.CertificateMonitorViewModel._notAfterText = "-"
private

not After Text 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 147 번째 라인에서 정의되었습니다.

◆ _remainingDaysText

string Codemaru.ViewModels.CertificateMonitorViewModel._remainingDaysText = "-"
private

remaining Days Text 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 156 번째 라인에서 정의되었습니다.

◆ _settingsWriter

readonly ICertificateSettingsWriter Codemaru.ViewModels.CertificateMonitorViewModel._settingsWriter
private

settings Writer 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 57 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel(), SaveSettingsAsync().

◆ _statusMessage

string Codemaru.ViewModels.CertificateMonitorViewModel._statusMessage = "Certificate monitor is ready."
private

status Message 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 111 번째 라인에서 정의되었습니다.

◆ _subject

string Codemaru.ViewModels.CertificateMonitorViewModel._subject = string.Empty
private

subject 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 129 번째 라인에서 정의되었습니다.

◆ _taskName

string Codemaru.ViewModels.CertificateMonitorViewModel._taskName = "-"
private

task Name 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 183 번째 라인에서 정의되었습니다.

◆ _taskState

string Codemaru.ViewModels.CertificateMonitorViewModel._taskState = "-"
private

task State 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 192 번째 라인에서 정의되었습니다.

◆ _wacsPath

string Codemaru.ViewModels.CertificateMonitorViewModel._wacsPath
private

wacs Path 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 84 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ _winAcmeService

readonly IWinAcmeService Codemaru.ViewModels.CertificateMonitorViewModel._winAcmeService
private

win Acme Service 값을 보관합니다.

CertificateMonitorViewModel.cs 파일의 39 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CertificateMonitorViewModel(), CheckRenewalTaskAsync(), RunRenewAsync().

속성 문서화

◆ CertificateDirectory

string Codemaru.ViewModels.CertificateMonitorViewModel.CertificateDirectory
getset

인증서 폴더 경로입니다.

CertificateMonitorViewModel.cs 파일의 335 번째 라인에서 정의되었습니다.

336 {
337 get => _certificateDirectory;
338 set => SetField(ref _certificateDirectory, value);
339 }

다음에 의해서 참조됨 : CloneOptions(), CreateOptions().

◆ CertificatePath

string Codemaru.ViewModels.CertificateMonitorViewModel.CertificatePath
getprivate set

선택된 인증서 파일 경로입니다.

CertificateMonitorViewModel.cs 파일의 445 번째 라인에서 정의되었습니다.

446 {
447 get => _certificatePath;
448 private set => SetField(ref _certificatePath, value);
449 }

다음에 의해서 참조됨 : RefreshAsync().

◆ CheckRenewalTaskCommand

ICommand Codemaru.ViewModels.CertificateMonitorViewModel.CheckRenewalTaskCommand
get

win-acme 예약 작업 조회 명령입니다.

CertificateMonitorViewModel.cs 파일의 637 번째 라인에서 정의되었습니다.

637{ get; }

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ CommandOutput

string Codemaru.ViewModels.CertificateMonitorViewModel.CommandOutput
getprivate set

최근 외부 명령 출력입니다.

CertificateMonitorViewModel.cs 파일의 613 번째 라인에서 정의되었습니다.

614 {
615 get => _commandOutput;
616 private set => SetField(ref _commandOutput, value);
617 }

다음에 의해서 참조됨 : ApplyProcessResult().

◆ CriticalDays

int Codemaru.ViewModels.CertificateMonitorViewModel.CriticalDays
getset

Critical 기준 남은 일수입니다.

CertificateMonitorViewModel.cs 파일의 411 번째 라인에서 정의되었습니다.

411{ get; set; }

다음에 의해서 참조됨 : CertificateMonitorViewModel(), CloneOptions(), CreateOptions().

◆ ForceRenewCommand

ICommand Codemaru.ViewModels.CertificateMonitorViewModel.ForceRenewCommand
get

win-acme 강제 갱신 명령입니다.

CertificateMonitorViewModel.cs 파일의 657 번째 라인에서 정의되었습니다.

657{ get; }

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ HealthBrush

Brush Codemaru.ViewModels.CertificateMonitorViewModel.HealthBrush
getprivate set

인증서 상태 표시 Brush입니다.

CertificateMonitorViewModel.cs 파일의 529 번째 라인에서 정의되었습니다.

530 {
531 get => _healthBrush;
532 private set => SetField(ref _healthBrush, value);
533 }

다음에 의해서 참조됨 : RefreshAsync().

◆ HealthText

string Codemaru.ViewModels.CertificateMonitorViewModel.HealthText
getprivate set

인증서 상태 표시 문자열입니다.

CertificateMonitorViewModel.cs 파일의 515 번째 라인에서 정의되었습니다.

516 {
517 get => _healthText;
518 private set => SetField(ref _healthText, value);
519 }

다음에 의해서 참조됨 : RefreshAsync().

◆ Issuer

string Codemaru.ViewModels.CertificateMonitorViewModel.Issuer
getprivate set

인증서 발급자입니다.

CertificateMonitorViewModel.cs 파일의 473 번째 라인에서 정의되었습니다.

474 {
475 get => _issuer;
476 private set => SetField(ref _issuer, value);
477 }

다음에 의해서 참조됨 : RefreshAsync().

◆ LastRunTime

string Codemaru.ViewModels.CertificateMonitorViewModel.LastRunTime
getprivate set

예약 작업 마지막 실행 시간입니다.

CertificateMonitorViewModel.cs 파일의 571 번째 라인에서 정의되었습니다.

572 {
573 get => _lastRunTime;
574 private set => SetField(ref _lastRunTime, value);
575 }

다음에 의해서 참조됨 : CheckRenewalTaskAsync().

◆ LastTaskResult

string Codemaru.ViewModels.CertificateMonitorViewModel.LastTaskResult
getprivate set

예약 작업 마지막 실행 결과입니다.

CertificateMonitorViewModel.cs 파일의 599 번째 라인에서 정의되었습니다.

600 {
601 get => _lastTaskResult;
602 private set => SetField(ref _lastTaskResult, value);
603 }

다음에 의해서 참조됨 : CheckRenewalTaskAsync().

◆ MaxCommandOutputChars

int Codemaru.ViewModels.CertificateMonitorViewModel.MaxCommandOutputChars
getset

외부 명령 출력 최대 길이입니다.

CertificateMonitorViewModel.cs 파일의 421 번째 라인에서 정의되었습니다.

421{ get; set; }

다음에 의해서 참조됨 : CertificateMonitorViewModel(), CloneOptions(), CreateOptions().

◆ NextRunTime

string Codemaru.ViewModels.CertificateMonitorViewModel.NextRunTime
getprivate set

예약 작업 다음 실행 시간입니다.

CertificateMonitorViewModel.cs 파일의 585 번째 라인에서 정의되었습니다.

586 {
587 get => _nextRunTime;
588 private set => SetField(ref _nextRunTime, value);
589 }

다음에 의해서 참조됨 : CheckRenewalTaskAsync().

◆ NginxPath

string Codemaru.ViewModels.CertificateMonitorViewModel.NginxPath
getset

nginx 실행 파일 경로입니다.

CertificateMonitorViewModel.cs 파일의 363 번째 라인에서 정의되었습니다.

364 {
365 get => _nginxPath;
366 set => SetField(ref _nginxPath, value);
367 }

다음에 의해서 참조됨 : CloneOptions(), CreateOptions().

◆ NginxWorkingDirectory

string Codemaru.ViewModels.CertificateMonitorViewModel.NginxWorkingDirectory
getset

nginx 작업 폴더입니다.

CertificateMonitorViewModel.cs 파일의 377 번째 라인에서 정의되었습니다.

378 {
379 get => _nginxWorkingDirectory;
380 set => SetField(ref _nginxWorkingDirectory, value);
381 }

다음에 의해서 참조됨 : CloneOptions(), CreateOptions().

◆ NotAfterText

string Codemaru.ViewModels.CertificateMonitorViewModel.NotAfterText
getprivate set

인증서 만료 시간 표시 문자열입니다.

CertificateMonitorViewModel.cs 파일의 487 번째 라인에서 정의되었습니다.

488 {
489 get => _notAfterText;
490 private set => SetField(ref _notAfterText, value);
491 }

다음에 의해서 참조됨 : RefreshAsync().

◆ PfxPassword

string Codemaru.ViewModels.CertificateMonitorViewModel.PfxPassword
getset

PFX 인증서 암호입니다.

CertificateMonitorViewModel.cs 파일의 391 번째 라인에서 정의되었습니다.

391{ get; set; }

다음에 의해서 참조됨 : CertificateMonitorViewModel(), CloneOptions(), CreateOptions().

◆ RefreshCommand

ICommand Codemaru.ViewModels.CertificateMonitorViewModel.RefreshCommand
get

인증서 상태 새로고침 명령입니다.

CertificateMonitorViewModel.cs 파일의 627 번째 라인에서 정의되었습니다.

627{ get; }

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ ReloadNginxCommand

ICommand Codemaru.ViewModels.CertificateMonitorViewModel.ReloadNginxCommand
get

nginx reload 명령입니다.

CertificateMonitorViewModel.cs 파일의 667 번째 라인에서 정의되었습니다.

667{ get; }

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ RemainingDaysText

string Codemaru.ViewModels.CertificateMonitorViewModel.RemainingDaysText
getprivate set

인증서 남은 기간 표시 문자열입니다.

CertificateMonitorViewModel.cs 파일의 501 번째 라인에서 정의되었습니다.

502 {
503 get => _remainingDaysText;
504 private set => SetField(ref _remainingDaysText, value);
505 }

다음에 의해서 참조됨 : RefreshAsync().

◆ RunRenewCommand

ICommand Codemaru.ViewModels.CertificateMonitorViewModel.RunRenewCommand
get

win-acme 일반 갱신 명령입니다.

CertificateMonitorViewModel.cs 파일의 647 번째 라인에서 정의되었습니다.

647{ get; }

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ SaveSettingsCommand

ICommand Codemaru.ViewModels.CertificateMonitorViewModel.SaveSettingsCommand
get

로컬 설정 저장 명령입니다.

CertificateMonitorViewModel.cs 파일의 677 번째 라인에서 정의되었습니다.

677{ get; }

다음에 의해서 참조됨 : CertificateMonitorViewModel().

◆ StatusMessage

string Codemaru.ViewModels.CertificateMonitorViewModel.StatusMessage
getprivate set

상태 메시지입니다.

CertificateMonitorViewModel.cs 파일의 431 번째 라인에서 정의되었습니다.

432 {
433 get => _statusMessage;
434 private set => SetField(ref _statusMessage, value);
435 }

다음에 의해서 참조됨 : ApplyProcessResult(), CheckRenewalTaskAsync(), RefreshAsync(), SaveSettingsAsync().

◆ Subject

string Codemaru.ViewModels.CertificateMonitorViewModel.Subject
getprivate set

인증서 주체입니다.

CertificateMonitorViewModel.cs 파일의 459 번째 라인에서 정의되었습니다.

460 {
461 get => _subject;
462 private set => SetField(ref _subject, value);
463 }

다음에 의해서 참조됨 : RefreshAsync().

◆ TaskName

string Codemaru.ViewModels.CertificateMonitorViewModel.TaskName
getprivate set

win-acme 예약 작업 이름입니다.

CertificateMonitorViewModel.cs 파일의 543 번째 라인에서 정의되었습니다.

544 {
545 get => _taskName;
546 private set => SetField(ref _taskName, value);
547 }

다음에 의해서 참조됨 : CheckRenewalTaskAsync().

◆ TaskState

string Codemaru.ViewModels.CertificateMonitorViewModel.TaskState
getprivate set

win-acme 예약 작업 상태입니다.

CertificateMonitorViewModel.cs 파일의 557 번째 라인에서 정의되었습니다.

558 {
559 get => _taskState;
560 private set => SetField(ref _taskState, value);
561 }

다음에 의해서 참조됨 : CheckRenewalTaskAsync().

◆ WacsPath

string Codemaru.ViewModels.CertificateMonitorViewModel.WacsPath
getset

win-acme 실행 파일 경로입니다.

CertificateMonitorViewModel.cs 파일의 349 번째 라인에서 정의되었습니다.

350 {
351 get => _wacsPath;
352 set => SetField(ref _wacsPath, value);
353 }

다음에 의해서 참조됨 : CloneOptions(), CreateOptions().

◆ WarningDays

int Codemaru.ViewModels.CertificateMonitorViewModel.WarningDays
getset

Warning 기준 남은 일수입니다.

CertificateMonitorViewModel.cs 파일의 401 번째 라인에서 정의되었습니다.

401{ get; set; }

다음에 의해서 참조됨 : CertificateMonitorViewModel(), CloneOptions(), CreateOptions().

이벤트 문서화

◆ PropertyChanged

PropertyChangedEventHandler? Codemaru.ViewModels.CertificateMonitorViewModel.PropertyChanged

속성 변경 이벤트입니다.

CertificateMonitorViewModel.cs 파일의 325 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : OnPropertyChanged().


이 클래스에 대한 문서화 페이지는 다음의 파일로부터 생성되었습니다.: