JSON backing store, I/O fixes, Networking Security
Introduced Newtonsoft.Json-backed persistence. Improved backing-store reliability and serialization across the caching stack. Improved networking security posture. Key changes: - Add new GameCult.Caching.NewtonsoftJson project with SingleFile/MultiFile backing stores and polymorphic known-type envelopes. - Add MessagePack helper serialization (DatabaseEntrySerialization) and update MessagePack backing stores to use the shared options/resolver; add DatabaseLink formatter and generator/analyzer docs. - Update CultLib.sln to include the new projects and new caching tests project. - Improve CultCache persistence behavior: track pending store operations, wait for operations on PullAll, and centralize async push handling with error logging. - Harden file I/O in multi-file/single-file stores: atomic temp-file writes, safe Replace/Move semantics, rename-safe deletes, and improved file-watcher subscription and debounce disposal. - Add README files and documentation for several subprojects and packaging projects. These changes add JSON persistence support, improve serialization consistency, and make on-disk operations more robust and observable.
This commit is contained in:
parent
d88eecb4ba
commit
0bfc85a4f2
50 changed files with 3957 additions and 325 deletions
|
|
@ -3,29 +3,36 @@ using UnityEngine;
|
|||
|
||||
namespace GameCult.Logging.Unity
|
||||
{
|
||||
/// <summary>
|
||||
/// Adapts <see cref="ILogger"/> calls to Unity's logging facilities.
|
||||
/// </summary>
|
||||
public class UnityLogger : ILogger
|
||||
{
|
||||
private readonly bool _isDebugBuild = Debug.isDebugBuild; // Cache Unity-specific
|
||||
|
||||
/// <inheritdoc />
|
||||
public void LogInfo(string message)
|
||||
{
|
||||
Observable.NextFrame().Subscribe(_ => Debug.Log($"[INFO] {message}"));
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public void LogWarning(string message)
|
||||
{
|
||||
Observable.NextFrame().Subscribe(_ => Debug.LogWarning($"[WARN] {message}"));
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public void LogError(string message)
|
||||
{
|
||||
Observable.NextFrame().Subscribe(_ => Debug.LogError($"[ERROR] {message}"));
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public void LogDebug(string message)
|
||||
{
|
||||
if (_isDebugBuild)
|
||||
Observable.NextFrame().Subscribe(_ => Debug.Log($"[DEBUG] {message}"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue