[#1] Add object Get operation + code quality
Signed-off-by: Ivan Pchelintsev <i.pchelintsev@yadro.com>
This commit is contained in:
parent
9aa93d123d
commit
b307c2c899
17 changed files with 182 additions and 99 deletions
|
@ -1,4 +1,5 @@
|
|||
using FrostFS.SDK.ClientV2;
|
||||
using FrostFS.SDK.ClientV2.Interfaces;
|
||||
using FrostFS.SDK.ClientV2.Mappers.GRPC;
|
||||
using FrostFS.SDK.ModelsV2;
|
||||
|
||||
|
@ -16,14 +17,11 @@ public class FrostFsService
|
|||
|
||||
public async Task<ContainerId[]> ListContainersAsync()
|
||||
{
|
||||
var containersIds = new List<ContainerId>();
|
||||
var listContainersResponse = await _client.ListContainersAsync();
|
||||
foreach (var cid in listContainersResponse.Body.ContainerIds)
|
||||
{
|
||||
containersIds.Add(ContainerId.FromHash(cid.Value.ToByteArray()));
|
||||
}
|
||||
|
||||
return containersIds.ToArray();
|
||||
return listContainersResponse.Body.ContainerIds.Select(
|
||||
cid => ContainerId.FromHash(cid.Value.ToByteArray())
|
||||
).ToArray();
|
||||
}
|
||||
|
||||
public async Task<ContainerId> CreateContainerAsync(ModelsV2.Container container)
|
||||
|
@ -52,12 +50,21 @@ public class FrostFsService
|
|||
return getObjectHeadResponse.Body.Header.Header.ToModel();
|
||||
}
|
||||
|
||||
public async Task<ModelsV2.Object> GetObjectAsync(ContainerId containerId, ObjectId objectId)
|
||||
{
|
||||
var obj = await _client.GetObjectAsync(
|
||||
containerId.ToGrpcMessage(),
|
||||
objectId.ToGrpcMessage()
|
||||
);
|
||||
return obj.ToModel();
|
||||
}
|
||||
|
||||
public async Task<ObjectId> PutObjectAsync(ObjectHeader header, Stream payload)
|
||||
{
|
||||
var putObjectResponse = await _client.PutObjectAsync(header.ToGrpcMessage(), payload);
|
||||
return ObjectId.FromHash(putObjectResponse.Body.ObjectId.Value.ToByteArray());
|
||||
}
|
||||
|
||||
|
||||
public async Task<ObjectId> PutObjectAsync(ObjectHeader header, byte[] payload)
|
||||
{
|
||||
var putObjectResponse = await _client.PutObjectAsync(header.ToGrpcMessage(), new MemoryStream(payload));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue