openai/openai-dotnet

Public

mirrored from https://github.com/openai/openai-dotnetAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.1.0-beta.1

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

src/Generated/InternalAssistantMessageClient.cs

152lines · modecode

1// <auto-generated/>
2
3#nullable disable
4
5using System;
6using System.ClientModel;
7using System.ClientModel.Primitives;
8using System.Threading.Tasks;
9
10namespace OpenAI.Assistants
11{
12 // Data plane generated sub-client.
13 internal partial class InternalAssistantMessageClient
14 {
15 private const string AuthorizationHeader = "Authorization";
16 private readonly ApiKeyCredential _keyCredential;
17 private const string AuthorizationApiKeyPrefix = "Bearer";
18 private readonly ClientPipeline _pipeline;
19 private readonly Uri _endpoint;
20
21 protected InternalAssistantMessageClient()
22 {
23 }
24
25 public virtual async Task<ClientResult> GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options)
26 {
27 Argument.AssertNotNullOrEmpty(threadId, nameof(threadId));
28
29 using PipelineMessage message = CreateGetMessagesRequest(threadId, limit, order, after, before, options);
30 return ClientResult.FromResponse(await _pipeline.ProcessMessageAsync(message, options).ConfigureAwait(false));
31 }
32
33 public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options)
34 {
35 Argument.AssertNotNullOrEmpty(threadId, nameof(threadId));
36
37 using PipelineMessage message = CreateGetMessagesRequest(threadId, limit, order, after, before, options);
38 return ClientResult.FromResponse(_pipeline.ProcessMessage(message, options));
39 }
40
41 internal PipelineMessage CreateCreateMessageRequest(string threadId, BinaryContent content, RequestOptions options)
42 {
43 var message = _pipeline.CreateMessage();
44 message.ResponseClassifier = PipelineMessageClassifier200;
45 var request = message.Request;
46 request.Method = "POST";
47 var uri = new ClientUriBuilder();
48 uri.Reset(_endpoint);
49 uri.AppendPath("/threads/", false);
50 uri.AppendPath(threadId, true);
51 uri.AppendPath("/messages", false);
52 request.Uri = uri.ToUri();
53 request.Headers.Set("Accept", "application/json");
54 request.Headers.Set("Content-Type", "application/json");
55 request.Content = content;
56 message.Apply(options);
57 return message;
58 }
59
60 internal PipelineMessage CreateGetMessagesRequest(string threadId, int? limit, string order, string after, string before, RequestOptions options)
61 {
62 var message = _pipeline.CreateMessage();
63 message.ResponseClassifier = PipelineMessageClassifier200;
64 var request = message.Request;
65 request.Method = "GET";
66 var uri = new ClientUriBuilder();
67 uri.Reset(_endpoint);
68 uri.AppendPath("/threads/", false);
69 uri.AppendPath(threadId, true);
70 uri.AppendPath("/messages", false);
71 if (limit != null)
72 {
73 uri.AppendQuery("limit", limit.Value, true);
74 }
75 if (order != null)
76 {
77 uri.AppendQuery("order", order, true);
78 }
79 if (after != null)
80 {
81 uri.AppendQuery("after", after, true);
82 }
83 if (before != null)
84 {
85 uri.AppendQuery("before", before, true);
86 }
87 request.Uri = uri.ToUri();
88 request.Headers.Set("Accept", "application/json");
89 message.Apply(options);
90 return message;
91 }
92
93 internal PipelineMessage CreateGetMessageRequest(string threadId, string messageId, RequestOptions options)
94 {
95 var message = _pipeline.CreateMessage();
96 message.ResponseClassifier = PipelineMessageClassifier200;
97 var request = message.Request;
98 request.Method = "GET";
99 var uri = new ClientUriBuilder();
100 uri.Reset(_endpoint);
101 uri.AppendPath("/threads/", false);
102 uri.AppendPath(threadId, true);
103 uri.AppendPath("/messages/", false);
104 uri.AppendPath(messageId, true);
105 request.Uri = uri.ToUri();
106 request.Headers.Set("Accept", "application/json");
107 message.Apply(options);
108 return message;
109 }
110
111 internal PipelineMessage CreateModifyMessageRequest(string threadId, string messageId, BinaryContent content, RequestOptions options)
112 {
113 var message = _pipeline.CreateMessage();
114 message.ResponseClassifier = PipelineMessageClassifier200;
115 var request = message.Request;
116 request.Method = "POST";
117 var uri = new ClientUriBuilder();
118 uri.Reset(_endpoint);
119 uri.AppendPath("/threads/", false);
120 uri.AppendPath(threadId, true);
121 uri.AppendPath("/messages/", false);
122 uri.AppendPath(messageId, true);
123 request.Uri = uri.ToUri();
124 request.Headers.Set("Accept", "application/json");
125 request.Headers.Set("Content-Type", "application/json");
126 request.Content = content;
127 message.Apply(options);
128 return message;
129 }
130
131 internal PipelineMessage CreateDeleteMessageRequest(string threadId, string messageId, RequestOptions options)
132 {
133 var message = _pipeline.CreateMessage();
134 message.ResponseClassifier = PipelineMessageClassifier200;
135 var request = message.Request;
136 request.Method = "DELETE";
137 var uri = new ClientUriBuilder();
138 uri.Reset(_endpoint);
139 uri.AppendPath("/threads/", false);
140 uri.AppendPath(threadId, true);
141 uri.AppendPath("/messages/", false);
142 uri.AppendPath(messageId, true);
143 request.Uri = uri.ToUri();
144 request.Headers.Set("Accept", "application/json");
145 message.Apply(options);
146 return message;
147 }
148
149 private static PipelineMessageClassifier _pipelineMessageClassifier200;
150 private static PipelineMessageClassifier PipelineMessageClassifier200 => _pipelineMessageClassifier200 ??= PipelineMessageClassifier.Create(stackalloc ushort[] { 200 });
151 }
152}
153