mirror of
https://gitea.tendokyu.moe/Kayori/Medusa.net.git
synced 2026-09-28 09:48:05 +03:00
- Refactor handler dispatch to use a parsed GameModel instead of raw model strings (Handler.cs, HandlerService.cs, new GameModel.cs) - Add a Unity asset-extraction subsystem (Abstractions/Extractors/Unity) - Add WriteEventLogHandler, XrpcDouble serialization type - Rename EaCoin*Handler -> *EaCoinHandler for naming consistency - Add PIN/username update and forgot/reset password flows, with a console-logging IEmailSender until real email is wired up - Add a settings page and a theming pass (theme tokens, tailwind config) - Add plugin nav/route/UI-manifest frontend types
31 lines
1.3 KiB
C#
31 lines
1.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace Abstractions.Extractors.Unity.Models;
|
|
|
|
/// <summary>One failed/degraded object extraction, recorded for extraction_log.txt.</summary>
|
|
public record ExtractionError
|
|
{
|
|
public long ObjectId { get; set; }
|
|
public string Type { get; set; } = "";
|
|
public string Error { get; set; } = "";
|
|
public string Traceback { get; set; } = "";
|
|
}
|
|
|
|
/// <summary>Summary of a bundle's file signature, as reported in the log (signature/compression/size only -
|
|
/// this is just what was sniffed from the header, not the result of a live decompression).</summary>
|
|
public record LoggedBundleInfo(string Signature, string Compression, long Size);
|
|
|
|
/// <summary>Accumulated results for one bundle extraction run, written out as extraction_log.txt.</summary>
|
|
public class ExtractionLog
|
|
{
|
|
public DateTimeOffset Timestamp { get; set; } = DateTimeOffset.Now;
|
|
public string BundlePath { get; set; } = "";
|
|
public LoggedBundleInfo BundleInfo { get; set; } = new("", "unknown", 0);
|
|
public int TotalObjectsProcessed { get; set; }
|
|
public int SuccessfulExtractions { get; set; }
|
|
public int FailedExtractions { get; set; }
|
|
public List<ExtractionError> Errors { get; } = [];
|
|
public Dictionary<string, int> ExtractedCounts { get; } = new();
|
|
}
|