1
0

Add Server model and a data repository.

This commit is contained in:
Kevin Matsubara 2025-03-23 23:36:43 +01:00
parent 4e9d8a3d66
commit b1ed6188fb
5 changed files with 105 additions and 4 deletions

View File

@ -1,9 +1,10 @@
@namespace ServerManagement.Components.Controls
<p>
Server is online.
<p
style="@($"color:{(server.IsOnline ? "green" : "red")}")">
@server.Name is in: @server.City @(server.IsOnline ? "online" : "offline")
</p>
@code {
private Server server = new Server { Name = "Server 1", City = "Einhoven" };
}

View File

@ -5,6 +5,8 @@
<br/>
<br/>
<ServerComponent></ServerComponent>
<br/>
<ServerComponent></ServerComponent>
@code {

View File

@ -8,4 +8,5 @@
@using Microsoft.JSInterop
@using ServerManagement
@using ServerManagement.Components
@using ServerManagement.Components.Controls
@using ServerManagement.Components.Controls
@using ServerManagement.Models

View File

@ -0,0 +1,17 @@
namespace ServerManagement.Models
{
public class Server
{
public Server()
{
Random random = new Random();
int randomNumber = random.Next(0, 2);
IsOnline = randomNumber != 0;
}
public int Id { get; set; }
public bool IsOnline { get; set; }
public string? Name { get; set; }
public string? City { get; set; }
}
}

View File

@ -0,0 +1,80 @@
namespace ServerManagement.Models
{
public static class ServersRepository
{
private static List<Server> servers = new List<Server>()
{
new Server { Id = 1, Name = "Server1", City = "Toronto" },
new Server { Id = 2, Name = "Server2", City = "Toronto" },
new Server { Id = 3, Name = "Server3", City = "Toronto" },
new Server { Id = 4, Name = "Server4", City = "Toronto" },
new Server { Id = 5, Name = "Server5", City = "Montreal" },
new Server { Id = 6, Name = "Server6", City = "Montreal" },
new Server { Id = 7, Name = "Server7", City = "Montreal" },
new Server { Id = 8, Name = "Server8", City = "Ottawa" },
new Server { Id = 9, Name = "Server9", City = "Ottawa" },
new Server { Id = 10, Name = "Server10", City = "Calgary" },
new Server { Id = 11, Name = "Server11", City = "Calgary" },
new Server { Id = 12, Name = "Server12", City = "Halifax" },
new Server { Id = 13, Name = "Server13", City = "Halifax" },
};
public static void AddServer(Server server)
{
var maxId = servers.Max(s => s.Id);
server.Id = maxId + 1;
servers.Add(server);
}
public static List<Server> GetServres() => servers;
public static List<Server> GetServersByCity(string cityName)
{
return servers.Where(s => s.City.Equals(cityName, StringComparison.OrdinalIgnoreCase)).ToList();
}
public static Server? GetServerById(int id)
{
var server = servers.FirstOrDefault(s => s.Id == id);
if (server != null)
{
return new Server
{
Id = server.Id,
Name = server.Name,
City = server.City,
IsOnline = server.IsOnline
};
}
return null;
}
public static void UpdateServer(int serverId, Server server)
{
if (serverId != server.Id) return;
var serverToUpdate = servers.FirstOrDefault(s => s.Id == serverId);
if (serverToUpdate != null)
{
serverToUpdate.IsOnline = server.IsOnline;
serverToUpdate.Name = server.Name;
serverToUpdate.City = server.City;
}
}
public static void DeleteServer(int serverId)
{
var server = servers.FirstOrDefault(s => s.Id == serverId);
if (server != null)
{
servers.Remove(server);
}
}
public static List<Server> SearchServers(string serverFilter)
{
return servers.Where(s => s.Name.Contains(serverFilter, StringComparison.OrdinalIgnoreCase)).ToList();
}
}
}