21 lines
646 B
C#
21 lines
646 B
C#
using CsWeb.Services;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.AspNetCore.Mvc.RazorPages;
|
|
|
|
namespace CsWeb.Pages;
|
|
|
|
public class ServerModel(Fleet fleet) : PageModel
|
|
{
|
|
public Fleet Fleet => fleet;
|
|
public string Id { get; private set; } = "";
|
|
public Cached<StatusPayload>? Status { get; private set; }
|
|
|
|
public async Task<IActionResult> OnGetAsync(string id)
|
|
{
|
|
// The slug space is exactly the socket names — anything else 404s before touching a socket path.
|
|
if (!fleet.Instances().Contains(id)) return NotFound();
|
|
Id = id;
|
|
Status = await fleet.Status(id);
|
|
return Page();
|
|
}
|
|
}
|