mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-11-05 08:07:21 +00:00
Generated the JSON contracts of providers, the runtime, and services at compile time (#1150)
This commit is contained in:
1 parent
e954881fda
commit
24e3c22db3
140 files changed
+1415
-292
No files matched your search
@@ -1,4 +1,4 @@
|
||||
// ReSharper disable NotAccessedPositionalProperty.Local
|
||||
// ReSharper disable NotAccessedPositionalProperty.Global
|
||||
using AIStudio.Tools.Rust;
|
||||
|
||||
namespace AIStudio.Tools.Services;
|
||||
@@ -14,14 +14,14 @@ public sealed partial class RustService
|
||||
{
|
||||
try
|
||||
{
|
||||
using var response = await this.http.PostAsJsonAsync("/share/file", new ShareFileRequest(filePath), this.jsonRustSerializerOptions);
|
||||
using var response = await this.http.PostAsJsonAsync("/share/file", new ShareFileRequest(filePath), JSON_OPTIONS);
|
||||
if (!response.IsSuccessStatusCode)
|
||||
{
|
||||
this.logger?.LogError($"The Rust runtime rejected the share request: {response.StatusCode}.");
|
||||
return new(ShareSheetOutcome.FAILED, $"The Rust runtime rejected the share request: {response.StatusCode}.");
|
||||
}
|
||||
|
||||
var result = await response.Content.ReadFromJsonAsync<ShareFileResponse>(this.jsonRustSerializerOptions);
|
||||
var result = await response.Content.ReadFromJsonAsync<ShareFileResponse>(JSON_OPTIONS);
|
||||
if (result is null)
|
||||
{
|
||||
this.logger?.LogError("The Rust runtime answered the share request without a result.");
|
||||
@@ -50,5 +50,8 @@ public sealed partial class RustService
|
||||
}
|
||||
}
|
||||
|
||||
private sealed record ShareFileRequest(string FilePath);
|
||||
/// <remarks>
|
||||
/// Internal rather than private, so that the JSON context of the runtime can name it.
|
||||
/// </remarks>
|
||||
internal sealed record ShareFileRequest(string FilePath);
|
||||
}
|
||||
Reference in new issue
Block a user