[#28] Clients: Make immutable parameters
Signed-off-by: Pavel Gross <p.gross@yadro.com>
This commit is contained in:
parent
749000a090
commit
9bb7b5eff8
62 changed files with 2742 additions and 963 deletions
|
@ -1,11 +1,12 @@
|
|||
namespace FrostFS.SDK.Client;
|
||||
|
||||
public sealed class PrmRangeGet(
|
||||
public readonly struct PrmRangeGet(
|
||||
FrostFsContainerId containerId,
|
||||
FrostFsObjectId objectId,
|
||||
FrostFsRange range,
|
||||
bool raw = false,
|
||||
CallContext? ctx = null) : PrmBase(ctx), ISessionToken
|
||||
FrostFsSessionToken? sessionToken = null,
|
||||
string[]? xheaders = null) : ISessionToken, System.IEquatable<PrmRangeGet>
|
||||
{
|
||||
public FrostFsContainerId ContainerId { get; } = containerId;
|
||||
|
||||
|
@ -16,5 +17,41 @@ public sealed class PrmRangeGet(
|
|||
public bool Raw { get; } = raw;
|
||||
|
||||
/// <inheritdoc />
|
||||
public FrostFsSessionToken? SessionToken { get; set; }
|
||||
public FrostFsSessionToken? SessionToken { get; } = sessionToken;
|
||||
|
||||
/// <summary>
|
||||
/// FrostFS request X-Headers
|
||||
/// </summary>
|
||||
public string[] XHeaders { get; } = xheaders ?? [];
|
||||
|
||||
public override readonly bool Equals(object obj)
|
||||
{
|
||||
if (obj == null || obj is not PrmRangeGet)
|
||||
return false;
|
||||
|
||||
return Equals((PrmRangeGet)obj);
|
||||
}
|
||||
|
||||
public readonly bool Equals(PrmRangeGet other)
|
||||
{
|
||||
return GetHashCode() == other.GetHashCode();
|
||||
}
|
||||
|
||||
public override readonly int GetHashCode()
|
||||
{
|
||||
return ContainerId.GetHashCode()
|
||||
^ ObjectId.GetHashCode()
|
||||
^ Range.GetHashCode()
|
||||
^ Raw.GetHashCode();
|
||||
}
|
||||
|
||||
public static bool operator ==(PrmRangeGet left, PrmRangeGet right)
|
||||
{
|
||||
return left.Equals(right);
|
||||
}
|
||||
|
||||
public static bool operator !=(PrmRangeGet left, PrmRangeGet right)
|
||||
{
|
||||
return !(left == right);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue