refactor: put public method above private methods

This commit is contained in:
Stevan Freeborn
2025-01-02 20:40:38 -06:00
parent 944822060c
commit 4fe8bfaf0e
+18 -18
View File
@@ -263,6 +263,24 @@ public class AnthropicApiClient : IAnthropicApiClient
} while (true); } while (true);
} }
/// <inheritdoc />
public async Task<AnthropicResult<TokenCountResponse>> CountMessageTokensAsync(CountMessageTokensRequest request)
{
var response = await SendRequestAsync(CountTokensEndpoint, request);
var anthropicHeaders = new AnthropicHeaders(response.Headers);
var responseContent = await response.Content.ReadAsStringAsync();
if (response.IsSuccessStatusCode is false)
{
var error = Deserialize<AnthropicError>(responseContent) ?? new AnthropicError();
return AnthropicResult<TokenCountResponse>.Failure(error, anthropicHeaders);
}
var msgResponse = Deserialize<TokenCountResponse>(responseContent) ?? new TokenCountResponse();
return AnthropicResult<TokenCountResponse>.Success(msgResponse, anthropicHeaders);
}
private ToolCall? GetToolCall(MessageResponse response, List<Tool> tools) private ToolCall? GetToolCall(MessageResponse response, List<Tool> tools)
{ {
var toolUse = response.Content.OfType<ToolUseContent>().FirstOrDefault(); var toolUse = response.Content.OfType<ToolUseContent>().FirstOrDefault();
@@ -282,24 +300,6 @@ public class AnthropicApiClient : IAnthropicApiClient
return new ToolCall(tool, toolUse); return new ToolCall(tool, toolUse);
} }
/// <inheritdoc />
public async Task<AnthropicResult<TokenCountResponse>> CountMessageTokensAsync(CountMessageTokensRequest request)
{
var response = await SendRequestAsync(CountTokensEndpoint, request);
var anthropicHeaders = new AnthropicHeaders(response.Headers);
var responseContent = await response.Content.ReadAsStringAsync();
if (response.IsSuccessStatusCode is false)
{
var error = Deserialize<AnthropicError>(responseContent) ?? new AnthropicError();
return AnthropicResult<TokenCountResponse>.Failure(error, anthropicHeaders);
}
var msgResponse = Deserialize<TokenCountResponse>(responseContent) ?? new TokenCountResponse();
return AnthropicResult<TokenCountResponse>.Success(msgResponse, anthropicHeaders);
}
private async Task<HttpResponseMessage> SendRequestAsync<T>(string endpoint, T request) private async Task<HttpResponseMessage> SendRequestAsync<T>(string endpoint, T request)
{ {
var requestJson = Serialize(request); var requestJson = Serialize(request);