mirror of
https://github.com/alexhopeoconnor/dnsmasq-webui.git
synced 2026-10-03 22:12:00 +10:00
- Move registration marker interfaces to Registration/Abstractions - Add feature folders with Abstractions subfolders: EffectiveConfig, Dnsmasq/Config, Dnsmasq/Hosts, Dnsmasq/Leases, Dnsmasq/Reload, Logs, Updates, UI/Settings, Common/Process - Place interfaces in each feature's Abstractions namespace; align implementation namespaces to folder paths - Update Program, extensions, controllers, hubs, helpers, components, and tests to use new namespaces - Remove old flat Services/Abstractions and root-level service files
17 lines
630 B
C#
17 lines
630 B
C#
namespace DnsmasqWebUI.Infrastructure.Services.Logs.Abstractions;
|
|
|
|
/// <summary>
|
|
/// Ring buffer of recent app log lines. Filled by ILoggerProvider, drained for SignalR push.
|
|
/// </summary>
|
|
public interface IAppLogsBuffer
|
|
{
|
|
/// <summary>Returns up to maxLines most recent lines (oldest first).</summary>
|
|
IReadOnlyList<string> GetRecent(int maxLines = 500);
|
|
|
|
/// <summary>Enqueues a formatted log line. Called by the logging provider.</summary>
|
|
void Enqueue(string line);
|
|
|
|
/// <summary>Returns and clears pending lines for streaming push. Called by pusher.</summary>
|
|
IReadOnlyList<string> DrainPending();
|
|
}
|