32 lines
No EOL
1,014 B
C#
32 lines
No EOL
1,014 B
C#
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Threading.Tasks;
|
|
|
|
using FrostFS.SDK.ModelsV2;
|
|
|
|
namespace FrostFS.SDK.ClientV2.Interfaces;
|
|
|
|
public interface IFrostFSClient
|
|
{
|
|
Task<ModelsV2.Container> GetContainerAsync(ContainerId containerId);
|
|
|
|
IAsyncEnumerable<ContainerId> ListContainersAsync();
|
|
|
|
Task<ContainerId> CreateContainerAsync(ModelsV2.Container container);
|
|
|
|
Task DeleteContainerAsync(ContainerId containerId);
|
|
|
|
Task<ObjectHeader> GetObjectHeadAsync(ContainerId containerId, ObjectId objectId);
|
|
|
|
Task<ModelsV2.Object> GetObjectAsync(ContainerId containerId, ObjectId objectId);
|
|
|
|
Task<ObjectId> PutObjectAsync(ObjectHeader header, Stream payload);
|
|
|
|
Task<ObjectId> PutObjectAsync(ObjectHeader header, byte[] payload);
|
|
|
|
Task<ObjectId> PutSingleObjectAsync(ModelsV2.Object obj);
|
|
|
|
Task DeleteObjectAsync(ContainerId containerId, ObjectId objectId);
|
|
|
|
IAsyncEnumerable<ObjectId> SearchObjectsAsync(ContainerId cid, params ObjectFilter[] filters);
|
|
} |