Define interfaces over the three domain services that the view model hard-news today (the testability blocker). Concrete types implement the new interfaces; no wiring or behavior change yet. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
35 lines
915 B
C#
35 lines
915 B
C#
// This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
|
|
// If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
// Copyright (C) LibreHardwareMonitor and Contributors.
|
|
|
|
using System;
|
|
|
|
namespace LibreHardwareMonitor.Windows.WinUI.Services;
|
|
|
|
/// <summary>
|
|
/// Optional HTTP server exposing sensor data. Extracted as an interface so the view model can be
|
|
/// unit-tested with a fake (and so the real server's network resources stay out of tests).
|
|
/// </summary>
|
|
public interface IRemoteWebServer : IDisposable
|
|
{
|
|
bool AuthEnabled { get; set; }
|
|
|
|
string ListenerIp { get; set; }
|
|
|
|
int ListenerPort { get; set; }
|
|
|
|
string PasswordHash { get; }
|
|
|
|
bool PlatformNotSupported { get; }
|
|
|
|
string UserName { get; set; }
|
|
|
|
void SetPassword(string plainPassword);
|
|
|
|
bool Start();
|
|
|
|
bool Stop();
|
|
|
|
void Quit();
|
|
}
|