初始化 monorepo: Go后端(7微服务) + Unity客户端(9模块) + 启动器 HTML5原型: Three.js 3D体素世界, Perlin噪声地形, 原版材质, 22种方块 Minecraft创造模式背包: 双栏布局, 拖拽移动物品, 方向性元件引脚 AI助搭策划文档 + 客户端/服务端骨架 + Docker Compose + CI
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
|
||||
namespace PCL.Core.Link.Scaffolding.Exceptions;
|
||||
|
||||
public class FailedToGetPlayerException : Exception
|
||||
{
|
||||
public FailedToGetPlayerException() : base()
|
||||
{
|
||||
}
|
||||
|
||||
public FailedToGetPlayerException(string msg) : base(msg)
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using System;
|
||||
|
||||
namespace PCL.Core.Link.Scaffolding.Exceptions;
|
||||
|
||||
/// <summary>
|
||||
/// Exception thrown when a scaffolding request fails with a non-success status code.
|
||||
/// </summary>
|
||||
public class ScaffoldingRequestException(byte statusCode, string? serverMessage = null) : Exception(_BuildMessage(
|
||||
statusCode,
|
||||
serverMessage))
|
||||
{
|
||||
/// <summary>
|
||||
/// The status code returned by the scaffolding server.
|
||||
/// </summary>
|
||||
public byte StatusCode { get; } = statusCode;
|
||||
|
||||
/// <summary>
|
||||
/// The error message or details returned by the server, if any.
|
||||
/// </summary>
|
||||
public string? ServerMessage { get; } = serverMessage;
|
||||
|
||||
private static string _BuildMessage(byte statusCode, string? serverMessage)
|
||||
{
|
||||
var errorType = statusCode switch
|
||||
{
|
||||
>= 32 and < 64 => "Protocol-defined error",
|
||||
255 => "Unknow error",
|
||||
_ => "Generic error"
|
||||
};
|
||||
|
||||
return string.IsNullOrEmpty(serverMessage)
|
||||
? $"Scaffolding request failed with status code {statusCode} ({errorType})."
|
||||
: $"Scaffolding request failed with status code {statusCode} ({errorType}): {serverMessage}";
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user