using System.Collections.Generic; using System.ComponentModel; using System.Runtime.CompilerServices; using ReactiveUI; namespace PSCHelpdesk.Plugins.HetznerServer.Models; public class Server : ReactiveObject { public long Id { get; set; } public string Name { get; set; } public string Status { get; set; } public string Type { get; set; } public string Ipv4 { get; set; } public string Ipv6 { get; set; } public Server(long id, string name, string type, string status, string ipv4, string ipv6) { Id = id; Name = name; Type = type; Status = status; Ipv4 = ipv4; Ipv6 = ipv6; this.Domains = new List(); } private List _domains; public List Domains { get => _domains; set => this.RaiseAndSetIfChanged(ref _domains, value); } private string _datum; public string Datum { get => _datum; set => this.RaiseAndSetIfChanged(ref _datum, value); } private float _release; public float Release { get => _release; set => this.RaiseAndSetIfChanged(ref _release, value); } private DateTime _backupLastModified; public DateTime BackupLastModified { get => _backupLastModified; set => this.RaiseAndSetIfChanged(ref _backupLastModified, value); } private bool _hasBackup = false; public bool HasBackup { get => _hasBackup; set => this.RaiseAndSetIfChanged(ref _hasBackup, value); } }