43 lines
1.2 KiB
C#
43 lines
1.2 KiB
C#
namespace FrostFS.SDK.Client;
|
|
|
|
public readonly struct PrmApeChainAdd(FrostFsChainTarget target, FrostFsChain chain, string[]? xheaders = null) : System.IEquatable<PrmApeChainAdd>
|
|
{
|
|
public FrostFsChainTarget Target { get; } = target;
|
|
|
|
public FrostFsChain Chain { get; } = chain;
|
|
|
|
/// <summary>
|
|
/// FrostFS request X-Headers
|
|
/// </summary>
|
|
public string[] XHeaders { get; } = xheaders ?? [];
|
|
|
|
public override readonly bool Equals(object obj)
|
|
{
|
|
if (obj == null || obj is not PrmApeChainAdd)
|
|
return false;
|
|
|
|
return Equals((PrmApeChainAdd)obj);
|
|
}
|
|
|
|
public readonly bool Equals(PrmApeChainAdd other)
|
|
{
|
|
return Target == other.Target
|
|
&& Chain == other.Chain
|
|
&& XHeaders == other.XHeaders;
|
|
}
|
|
|
|
public override readonly int GetHashCode()
|
|
{
|
|
return Chain.GetHashCode() ^ Target.GetHashCode() ^ XHeaders.GetHashCode();
|
|
}
|
|
|
|
public static bool operator ==(PrmApeChainAdd left, PrmApeChainAdd right)
|
|
{
|
|
return left.Equals(right);
|
|
}
|
|
|
|
public static bool operator !=(PrmApeChainAdd left, PrmApeChainAdd right)
|
|
{
|
|
return !(left == right);
|
|
}
|
|
}
|