Core.Blueprint.BFF/Core.Blueprint.External/Clients/Blueprint/IBlueprintServiceClient.cs
2025-05-18 18:16:12 -06:00

71 lines
4.0 KiB
C#

using Core.Blueprint.External.Clients.Blueprint.Adapters;
using Core.Blueprint.External.Clients.Blueprint.Requests.BlobStorage;
using Core.Blueprint.External.Clients.Blueprint.Requests.KeyVault;
using Core.Blueprint.External.Clients.Blueprint.Requests.Mongo;
using Core.Blueprint.External.Clients.Blueprint.Requests.SQL;
using Core.Blueprint.KeyVault;
using Core.Blueprint.Storage;
using Core.Blueprint.Storage.Adapters;
using Microsoft.AspNetCore.Mvc;
using Refit;
namespace Core.Blueprint.External.Clients.Blueprint
{
public interface IBlueprintServiceClient
{
[Post("/v1/MongoSample/Create")]
Task<ApiResponse<MongoSampleAdapter>> CreateMongoSampleService([Body] CreateMongoSampleRequest newMongoSample, CancellationToken cancellationToken = default);
[Get("/v1/MongoSample/GetAll")]
Task<ApiResponse<IEnumerable<MongoSampleAdapter>>> GetAllMongoSamplesService(CancellationToken cancellationToken = default);
[Post("/v1/MongoSample/GetById")]
Task<ApiResponse<MongoSampleAdapter>> GetMongoSampleByIdService([Body] GetMongoSampleRequest request, CancellationToken cancellationToken = default);
[Put("/v1/MongoSample/Update")]
Task<ApiResponse<MongoSampleAdapter>> UpdateMongoSampleService([Body] UpdateMongoSampleRequest entity, CancellationToken cancellationToken = default);
[Delete("/v1/MongoSample/Delete")]
Task<ApiResponse<MongoSampleAdapter>> DeleteMongoSampleService([Body] DeleteMongoSampleRequest request, CancellationToken cancellationToken = default);
[Post("/v1/SqlSample/Create")]
Task<ApiResponse<SqlSampleAdapter>> CreateSqlSampleService([Body] CreateSqlSampleRequest newSqlSample, CancellationToken cancellationToken = default);
[Get("/v1/SqlSample/GetAll")]
Task<ApiResponse<IEnumerable<SqlSampleAdapter>>> GetAllSqlSamplesService(CancellationToken cancellationToken = default);
[Post("/v1/SqlSample/GetById")]
Task<ApiResponse<SqlSampleAdapter>> GetSqlSampleByIdService([Body] GetSqlSampleRequest request, CancellationToken cancellationToken = default);
[Put("/v1/SqlSample/Update")]
Task<ApiResponse<SqlSampleAdapter>> UpdateSqlSampleService([Body] UpdateSqlSampleRequest entity, CancellationToken cancellationToken = default);
[Delete("/v1/SqlSample/Delete")]
Task<ApiResponse<SqlSampleAdapter>> DeleteSqlSampleService([Body] DeleteSqlSampleRequest request, CancellationToken cancellationToken = default);
[Post("/v1/KeyVault/CreateSecret")]
Task<ApiResponse<KeyVaultResponse>> CreateSecretService([Body] CreateSecretRequest newKeyVault, CancellationToken cancellationToken = default);
[Post("/v1/KeyVault/GetSecretByName")]
Task<ApiResponse<KeyVaultAdapter>> GetSecretByNameService([Body] GetSecretRequest request, CancellationToken cancellationToken = default);
[Put("/v1/KeyVault/UpdateSecret")]
Task<ApiResponse<KeyVaultAdapter>> UpdateSecretService([Body] UpdateSecretRequest entity, CancellationToken cancellationToken = default);
[Delete("/v1/KeyVault/DeleteSecret")]
Task<ApiResponse<KeyVaultAdapter>> DeleteSecretService([Body] DeleteSecretRequest request, CancellationToken cancellationToken = default);
[Post("/v1/BlobStorage/UploadBlob")]
Task<ApiResponse<BlobFileAdapter>> UploadBlobService([Body] UploadBlobRequest request, CancellationToken cancellationToken = default);
[Get("/v1/BlobStorage/GetBlobList")]
Task<ApiResponse<List<BlobFileAdapter>>> GetBlobListAsync([FromQuery] string? prefix, CancellationToken cancellationToken = default);
[Post("/v1/BlobStorage/DownloadBlob")]
Task<ApiResponse<BlobDownloadUriAdapter>> DownloadBlobAsync([Body] DownloadBlobRequest request, CancellationToken cancellationToken = default);
[Delete("/v1/BlobStorage/DeleteBlob")]
Task<ApiResponse<BlobFileAdapter>> DeleteBlobService([Body] DeleteBlobRequest request, CancellationToken cancellationToken = default);
}
}