1
0
mirror of https://github.com/ncblakely/GiantsTools synced 2024-11-22 22:25:37 +01:00
GiantsTools/Giants.Services/Core/Entities/ServerInfo.cs

35 lines
931 B
C#
Raw Normal View History

namespace Giants.Services
{
using System;
2020-08-09 01:31:16 +02:00
using Giants.Services.Core.Entities;
2020-08-09 01:31:16 +02:00
public class ServerInfo : DataContract.ServerInfo, IIdentifiable
{
2020-08-09 01:31:16 +02:00
public string id => HostIpAddress;
public string HostIpAddress { get; set; }
public DateTime LastHeartbeat { get; set; }
2020-08-09 01:31:16 +02:00
public string DocumentType => nameof(ServerInfo);
public override bool Equals(object obj)
{
return obj is ServerInfo info &&
base.Equals(obj) &&
HostIpAddress == info.HostIpAddress &&
DocumentType == info.DocumentType;
}
public override int GetHashCode()
{
HashCode hash = new HashCode();
hash.Add(base.GetHashCode());
hash.Add(id);
hash.Add(HostIpAddress);
hash.Add(DocumentType);
return hash.ToHashCode();
}
}
}