borepin/FabAccessAPI/ConnectionData.cs
2022-05-16 16:07:33 +02:00

34 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
namespace FabAccessAPI
{
public class ConnectionData
{
public Uri Host;
public Mechanism Mechanism;
public string Username;
public Dictionary<string, object> Properties;
public DateTime LastTime;
public override bool Equals(object? obj)
{
return obj is ConnectionData data &&
EqualityComparer<Uri>.Default.Equals(Host, data.Host) &&
Mechanism == data.Mechanism &&
Username == data.Username &&
EqualityComparer<Dictionary<string, object>>.Default.Equals(Properties, data.Properties);
}
public override int GetHashCode()
{
int hashCode = -1151110446;
hashCode = hashCode * -1521134295 + EqualityComparer<Uri>.Default.GetHashCode(Host);
hashCode = hashCode * -1521134295 + Mechanism.GetHashCode();
hashCode = hashCode * -1521134295 + EqualityComparer<string>.Default.GetHashCode(Username);
hashCode = hashCode * -1521134295 + EqualityComparer<Dictionary<string, object>>.Default.GetHashCode(Properties);
return hashCode;
}
}
}