[#28] Clients: Make immutable parameters

Signed-off-by: Pavel Gross <p.gross@yadro.com>
This commit is contained in:
Pavel Gross 2024-12-02 19:33:45 +03:00
parent 749000a090
commit 9bb7b5eff8
62 changed files with 2742 additions and 963 deletions

View file

@ -185,7 +185,7 @@ public partial class Pool : IFrostFSClient
InnerPools = inner;
var res = await GetNetworkSettingsAsync(new PrmNetworkSettings(ctx)).ConfigureAwait(false);
var res = await GetNetworkSettingsAsync(default).ConfigureAwait(false);
MaxObjectSize = res.MaxObjectSize;
@ -312,7 +312,7 @@ public partial class Pool : IFrostFSClient
private static async Task<FrostFsSessionToken> InitSessionForDuration(CallContext ctx, ClientWrapper cw, ulong duration, ECDsa key, bool clientCut)
{
var client = cw.Client;
var networkInfo = await client!.GetNetworkSettingsAsync(new PrmNetworkSettings(ctx)).ConfigureAwait(false);
var networkInfo = await client!.GetNetworkSettingsAsync(ctx).ConfigureAwait(false);
var epoch = networkInfo.Epoch;
@ -320,9 +320,9 @@ public partial class Pool : IFrostFSClient
? ulong.MaxValue
: epoch + duration;
var prmSessionCreate = new PrmSessionCreate(exp, ctx);
var prmSessionCreate = new PrmSessionCreate(exp);
return await client.CreateSessionAsync(prmSessionCreate).ConfigureAwait(false);
return await client.CreateSessionAsync(prmSessionCreate, ctx).ConfigureAwait(false);
}
internal static string FormCacheKey(string address, string key)
@ -507,139 +507,137 @@ public partial class Pool : IFrostFSClient
return statistics;
}
public async Task<FrostFsNetmapSnapshot> GetNetmapSnapshotAsync(PrmNetmapSnapshot? args = null)
public async Task<FrostFsNetmapSnapshot> GetNetmapSnapshotAsync(CallContext ctx)
{
var client = Connection();
args ??= new();
return await client.Client!.GetNetmapSnapshotAsync(args).ConfigureAwait(false);
return await client.Client!.GetNetmapSnapshotAsync(ctx).ConfigureAwait(false);
}
public async Task<FrostFsNodeInfo> GetNodeInfoAsync(PrmNodeInfo? args = null)
public async Task<FrostFsNodeInfo> GetNodeInfoAsync(CallContext ctx)
{
var client = Connection();
return await client.Client!.GetNodeInfoAsync(args).ConfigureAwait(false);
return await client.Client!.GetNodeInfoAsync(ctx).ConfigureAwait(false);
}
public async Task<NetworkSettings> GetNetworkSettingsAsync(PrmNetworkSettings? args = null)
public async Task<NetworkSettings> GetNetworkSettingsAsync(CallContext ctx)
{
var client = Connection();
return await client.Client!.GetNetworkSettingsAsync(args).ConfigureAwait(false);
return await client.Client!.GetNetworkSettingsAsync(ctx).ConfigureAwait(false);
}
public async Task<FrostFsSessionToken> CreateSessionAsync(PrmSessionCreate args)
public async Task<FrostFsSessionToken> CreateSessionAsync(PrmSessionCreate args, CallContext ctx)
{
var client = Connection();
return await client.Client!.CreateSessionAsync(args).ConfigureAwait(false);
return await client.Client!.CreateSessionAsync(args, ctx).ConfigureAwait(false);
}
public async Task<ReadOnlyMemory<byte>> AddChainAsync(PrmApeChainAdd args)
public async Task<ReadOnlyMemory<byte>> AddChainAsync(PrmApeChainAdd args, CallContext ctx)
{
var client = Connection();
return await client.Client!.AddChainAsync(args).ConfigureAwait(false);
return await client.Client!.AddChainAsync(args, ctx).ConfigureAwait(false);
}
public async Task RemoveChainAsync(PrmApeChainRemove args)
public async Task RemoveChainAsync(PrmApeChainRemove args, CallContext ctx)
{
var client = Connection();
await client.Client!.RemoveChainAsync(args).ConfigureAwait(false);
await client.Client!.RemoveChainAsync(args, ctx).ConfigureAwait(false);
}
public async Task<Chain[]> ListChainAsync(PrmApeChainList args)
public async Task<Chain[]> ListChainAsync(PrmApeChainList args, CallContext ctx)
{
var client = Connection();
return await client.Client!.ListChainAsync(args).ConfigureAwait(false);
return await client.Client!.ListChainAsync(args, ctx).ConfigureAwait(false);
}
public async Task<FrostFsContainerInfo> GetContainerAsync(PrmContainerGet args)
public async Task<FrostFsContainerInfo> GetContainerAsync(PrmContainerGet args, CallContext ctx)
{
var client = Connection();
return await client.Client!.GetContainerAsync(args).ConfigureAwait(false);
return await client.Client!.GetContainerAsync(args, ctx).ConfigureAwait(false);
}
public IAsyncEnumerable<FrostFsContainerId> ListContainersAsync(PrmContainerGetAll? args = null)
public IAsyncEnumerable<FrostFsContainerId> ListContainersAsync(PrmContainerGetAll args, CallContext ctx)
{
var client = Connection();
return client.Client!.ListContainersAsync(args);
return client.Client!.ListContainersAsync(args, ctx);
}
public async Task<FrostFsContainerId> CreateContainerAsync(PrmContainerCreate args)
public async Task<FrostFsContainerId> CreateContainerAsync(PrmContainerCreate args, CallContext ctx)
{
var client = Connection();
return await client.Client!.CreateContainerAsync(args).ConfigureAwait(false);
return await client.Client!.CreateContainerAsync(args, ctx).ConfigureAwait(false);
}
public async Task DeleteContainerAsync(PrmContainerDelete args)
public async Task DeleteContainerAsync(PrmContainerDelete args, CallContext ctx)
{
var client = Connection();
await client.Client!.DeleteContainerAsync(args).ConfigureAwait(false);
await client.Client!.DeleteContainerAsync(args, ctx).ConfigureAwait(false);
}
public async Task<FrostFsObjectHeader> GetObjectHeadAsync(PrmObjectHeadGet args)
public async Task<FrostFsHeaderResult> GetObjectHeadAsync(PrmObjectHeadGet args, CallContext ctx)
{
var client = Connection();
return await client.Client!.GetObjectHeadAsync(args).ConfigureAwait(false);
return await client.Client!.GetObjectHeadAsync(args, ctx).ConfigureAwait(false);
}
public async Task<FrostFsObject> GetObjectAsync(PrmObjectGet args)
public async Task<FrostFsObject> GetObjectAsync(PrmObjectGet args, CallContext ctx)
{
var client = Connection();
return await client.Client!.GetObjectAsync(args).ConfigureAwait(false);
return await client.Client!.GetObjectAsync(args, ctx).ConfigureAwait(false);
}
public async Task<FrostFsObjectId> PutObjectAsync(PrmObjectPut args)
public async Task<FrostFsObjectId> PutObjectAsync(PrmObjectPut args, CallContext ctx)
{
var client = Connection();
return await client.Client!.PutObjectAsync(args).ConfigureAwait(false);
return await client.Client!.PutObjectAsync(args, ctx).ConfigureAwait(false);
}
public async Task<FrostFsObjectId> PutSingleObjectAsync(PrmSingleObjectPut args)
public async Task<FrostFsObjectId> PutSingleObjectAsync(PrmSingleObjectPut args, CallContext ctx)
{
var client = Connection();
return await client.Client!.PutSingleObjectAsync(args).ConfigureAwait(false);
return await client.Client!.PutSingleObjectAsync(args, ctx).ConfigureAwait(false);
}
public async Task<FrostFsObjectId> PatchObjectAsync(PrmObjectPatch args)
public async Task<FrostFsObjectId> PatchObjectAsync(PrmObjectPatch args, CallContext ctx)
{
var client = Connection();
return await client.Client!.PatchObjectAsync(args).ConfigureAwait(false);
return await client.Client!.PatchObjectAsync(args, ctx).ConfigureAwait(false);
}
public async Task<RangeReader> GetRangeAsync(PrmRangeGet args)
public async Task<RangeReader> GetRangeAsync(PrmRangeGet args, CallContext ctx)
{
var client = Connection();
return await client.Client!.GetRangeAsync(args).ConfigureAwait(false);
return await client.Client!.GetRangeAsync(args, ctx).ConfigureAwait(false);
}
public async Task<ReadOnlyMemory<byte>[]> GetRangeHashAsync(PrmRangeHashGet args)
public async Task<ReadOnlyMemory<byte>[]> GetRangeHashAsync(PrmRangeHashGet args, CallContext ctx)
{
var client = Connection();
return await client.Client!.GetRangeHashAsync(args).ConfigureAwait(false);
return await client.Client!.GetRangeHashAsync(args, ctx).ConfigureAwait(false);
}
public async Task<FrostFsObjectId> PatchAsync(PrmObjectPatch args)
public async Task<FrostFsObjectId> PatchAsync(PrmObjectPatch args, CallContext ctx)
{
var client = Connection();
return await client.Client!.PatchObjectAsync(args).ConfigureAwait(false);
return await client.Client!.PatchObjectAsync(args, ctx).ConfigureAwait(false);
}
public async Task DeleteObjectAsync(PrmObjectDelete args)
public async Task DeleteObjectAsync(PrmObjectDelete args, CallContext ctx)
{
var client = Connection();
await client.Client!.DeleteObjectAsync(args).ConfigureAwait(false);
await client.Client!.DeleteObjectAsync(args, ctx).ConfigureAwait(false);
}
public IAsyncEnumerable<FrostFsObjectId> SearchObjectsAsync(PrmObjectSearch args)
public IAsyncEnumerable<FrostFsObjectId> SearchObjectsAsync(PrmObjectSearch args, CallContext ctx)
{
var client = Connection();
return client.Client!.SearchObjectsAsync(args);
return client.Client!.SearchObjectsAsync(args, ctx);
}
public async Task<Accounting.Decimal> GetBalanceAsync(PrmBalance? args)
public async Task<Accounting.Decimal> GetBalanceAsync(CallContext ctx)
{
var client = Connection();
return await client.Client!.GetBalanceAsync(args).ConfigureAwait(false);
return await client.Client!.GetBalanceAsync(ctx).ConfigureAwait(false);
}
protected virtual void Dispose(bool disposing)
@ -661,9 +659,4 @@ public partial class Pool : IFrostFSClient
Dispose(disposing: true);
GC.SuppressFinalize(this);
}
public FrostFsObjectId CalculateObjectId(FrostFsObjectHeader header)
{
throw new NotImplementedException();
}
}