AcSignalRClient; AcBrowserLogWriter...

This commit is contained in:
Loretta 2025-09-01 16:19:01 +02:00
parent 2edc099017
commit 77a6f26a5c
4 changed files with 51 additions and 6 deletions

View File

@ -0,0 +1,4 @@
namespace AyCode.Core.Loggers;
public interface IAcLogWriterClientBase : IAcLogWriterBase
{}

View File

@ -26,6 +26,7 @@ namespace AyCode.Services.Server.SignalRs
protected AcSignalRClientBase(string fullHubName, AcLoggerBase logger)
{
Logger = logger;
Logger.Detail(fullHubName);
HubConnection = new HubConnectionBuilder()
.WithUrl(fullHubName)

View File

@ -0,0 +1,46 @@
using AyCode.Core.Enums;
using AyCode.Core.Loggers;
using Microsoft.JSInterop;
namespace AyCode.Services.Loggers;
//public interface IBrowserConsoleLogWriter : IAcLogWriterBase
//{ }
//public abstract class LogWriterClient : AcTextLogWriterBase
//{
// protected LogWriterClient(IJSRuntime jsRuntime) : base(AppType.Web, LogLevel.Debug)
// { }
//}
public class AcBrowserConsoleLogWriter : AcTextLogWriterBase, IAcLogWriterClientBase
{
protected readonly IJSRuntime JsRuntime;
protected readonly Dictionary<LogLevel, string> InvokeConsoleNames = new()
{
[LogLevel.Detail] = "console.info", //trace
[LogLevel.Trace] = "console.info",
[LogLevel.Debug] = "console.info",
[LogLevel.Info] = "console.info",
[LogLevel.Suggest] = "console.info",
[LogLevel.Warning] = "console.warn",
[LogLevel.Error] = "console.error"
};
protected AcBrowserConsoleLogWriter(IJSRuntime jsRuntime, AppType appType = AppType.Web, LogLevel logLevel = LogLevel.Info) : base(appType, logLevel)
{
JsRuntime = jsRuntime;
}
protected override void WriteText(string? logText, LogLevel logLevel)
{
JsRuntime.InvokeVoidAsync(InvokeConsoleNames[logLevel], logText); //logText?.Replace(Environment.NewLine, "<br />"));
}
//public void Info(string message)
//{
// ((AcLogWriterBase)this).Info(message);
// //jsRuntime.InvokeVoidAsync("console.log", logText);
//}
}

View File

@ -1,6 +0,0 @@
using AyCode.Core.Loggers;
namespace AyCode.Services.Loggers;
public interface IAcLogWriterClientBase : IAcLogWriterBase
{}