CUB-10: Create IMoonrakerClient interface and DTOs
- Expanded IMoonrakerClient interface with 6 strongly-typed methods: - GetServerInfoAsync (Moonraker /server/info) - IsReachableAsync (connectivity check) - GetPrinterInfoAsync (Moonraker /printer/info) - GetPrintHistoryAsync (Moonraker /server/history/items) - GetPrintStatsAsync (Moonraker /printer/objects/query?print_stats) - GetDisplayStatusAsync (Moonraker /printer/objects/query?display_status) - GetFilamentUsageAsync (retained for backward compatibility) - Created Domain/DTOs/Moonraker/ with 7 DTOs: - MoonrakerServerInfo, MoonrakerPrinterInfo, MoonrakerPrintJob - MoonrakerHistoryResponse, MoonrakerPrintStats - MoonrakerDisplayStatus, MoonrakerRequest - Updated MoonrakerClient implementation to support all new methods with proper JSON parsing and mapping helpers - Full XML doc comments on all public members
This commit is contained in:
26
backend/Domain/DTOs/Moonraker/MoonrakerPrinterInfo.cs
Normal file
26
backend/Domain/DTOs/Moonraker/MoonrakerPrinterInfo.cs
Normal file
@@ -0,0 +1,26 @@
|
||||
namespace Extrudex.Domain.DTOs.Moonraker;
|
||||
|
||||
/// <summary>
|
||||
/// Response DTO for the Moonraker /printer/info endpoint.
|
||||
/// Contains the current operational state of the Klipper printer.
|
||||
/// Used to determine whether the printer is idle, printing, paused, or in error.
|
||||
/// </summary>
|
||||
public class MoonrakerPrinterInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// Current Klipper state: "ready", "startup", "shutdown", "error", "cancelled".
|
||||
/// A "ready" state means the printer is connected and idle.
|
||||
/// </summary>
|
||||
public string State { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Detailed state message from Klipper. May contain error details
|
||||
/// when the state is "error" or "shutdown".
|
||||
/// </summary>
|
||||
public string StateMessage { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// Whether the Klipper firmware is currently connected and responsive.
|
||||
/// </summary>
|
||||
public bool KlippyReady { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user