:drunk: AI trying to fix bugs
This commit is contained in:
@ -89,6 +89,62 @@ namespace DysonNetwork.Common.Clients
|
||||
response.EnsureSuccessStatusCode();
|
||||
}
|
||||
|
||||
public async Task DeleteResourceReferencesAsync(string resourceId, string? usage = null)
|
||||
{
|
||||
var url = $"api/filereferences/resource/{resourceId}";
|
||||
if (!string.IsNullOrEmpty(usage))
|
||||
{
|
||||
url += $"?usage={Uri.EscapeDataString(usage)}";
|
||||
}
|
||||
|
||||
var response = await _httpClient.DeleteAsync(url);
|
||||
response.EnsureSuccessStatusCode();
|
||||
}
|
||||
|
||||
public async Task<List<CloudFileReference>> GetFileReferencesAsync(string fileId)
|
||||
{
|
||||
var response = await _httpClient.GetAsync($"api/filereferences/file/{fileId}");
|
||||
response.EnsureSuccessStatusCode();
|
||||
|
||||
await using var stream = await response.Content.ReadAsStreamAsync();
|
||||
var references = await JsonSerializer.DeserializeAsync<List<CloudFileReference>>(stream, _jsonOptions);
|
||||
return references ?? new List<CloudFileReference>();
|
||||
}
|
||||
|
||||
public async Task<List<CloudFileReference>> GetResourceReferencesAsync(string resourceId, string? usage = null)
|
||||
{
|
||||
var url = $"api/filereferences/resource/{resourceId}";
|
||||
if (!string.IsNullOrEmpty(usage))
|
||||
{
|
||||
url += $"?usage={Uri.EscapeDataString(usage)}";
|
||||
}
|
||||
|
||||
var response = await _httpClient.GetAsync(url);
|
||||
response.EnsureSuccessStatusCode();
|
||||
|
||||
await using var stream = await response.Content.ReadAsStreamAsync();
|
||||
var references = await JsonSerializer.DeserializeAsync<List<CloudFileReference>>(stream, _jsonOptions);
|
||||
return references ?? new List<CloudFileReference>();
|
||||
}
|
||||
|
||||
public async Task<bool> HasReferencesAsync(string fileId)
|
||||
{
|
||||
var response = await _httpClient.GetAsync($"api/filereferences/file/{fileId}/exists");
|
||||
return response.IsSuccessStatusCode;
|
||||
}
|
||||
|
||||
public async Task UpdateReferenceExpirationAsync(string referenceId, Instant? expiredAt)
|
||||
{
|
||||
var request = new { ExpiredAt = expiredAt };
|
||||
var content = new StringContent(
|
||||
JsonSerializer.Serialize(request, _jsonOptions),
|
||||
Encoding.UTF8,
|
||||
"application/json");
|
||||
|
||||
var response = await _httpClient.PutAsync($"api/filereferences/{referenceId}/expiration", content);
|
||||
response.EnsureSuccessStatusCode();
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
_httpClient?.Dispose();
|
||||
|
Reference in New Issue
Block a user