openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.2.0

Branches

Tags

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

Clone

HTTPS

Download ZIP

src/Custom/Files/OpenAIFileCollection.cs

69lines · modeblame

9f9f2936Jose Arriaga Maldonado2 years ago1using System;
5dce104aJose Arriaga Maldonado1 years ago2using System.ClientModel;
3using System.ClientModel.Primitives;
9f9f2936Jose Arriaga Maldonado2 years ago4using System.Collections.Generic;
5using System.Collections.ObjectModel;
5dce104aJose Arriaga Maldonado1 years ago6using System.Text.Json;
9f9f2936Jose Arriaga Maldonado2 years ago7
8namespace OpenAI.Files;
9
0ca4c062Jose Arriaga Maldonado1 years ago10[CodeGenType("ListFilesResponse")]
9f9f2936Jose Arriaga Maldonado2 years ago11[CodeGenSuppress("Data")]
19ceae44ShivangiReja1 years ago12[CodeGenSuppress(nameof(OpenAIFileCollection))]
0e0c460cJose Arriaga Maldonado1 years ago13[CodeGenSuppress(nameof(OpenAIFileCollection), typeof(string), typeof(string), typeof(bool))]
5dce104aJose Arriaga Maldonado1 years ago14[CodeGenSuppress(nameof(OpenAIFileCollection), typeof(string), typeof(string), typeof(string), typeof(bool), typeof(IDictionary<string, BinaryData>))]
19ceae44ShivangiReja1 years ago15public partial class OpenAIFileCollection : ReadOnlyCollection<OpenAIFile>
9f9f2936Jose Arriaga Maldonado2 years ago16{
17// CUSTOM: Made private. This property does not add value in the context of a strongly-typed class.
0ca4c062Jose Arriaga Maldonado1 years ago18[CodeGenMember("Object")]
5dce104aJose Arriaga Maldonado1 years ago19private string Object { get; } = "list";
0ca4c062Jose Arriaga Maldonado1 years ago20
0e0c460cJose Arriaga Maldonado1 years ago21// CUSTOM: Internalizing pending stanardized pagination representation for the list operation.
22[CodeGenMember("FirstId")]
23internal string FirstId { get; }
24
25[CodeGenMember("LastId")]
26internal string LastId { get; }
27
28[CodeGenMember("HasMore")]
29internal bool HasMore { get; }
30
19ceae44ShivangiReja1 years ago31/// <summary> Initializes a new instance of <see cref="OpenAIFileCollection"/>. </summary>
9f9f2936Jose Arriaga Maldonado2 years ago32/// <param name="data"></param>
33/// <exception cref="ArgumentNullException"> <paramref name="data"/> is null. </exception>
0e0c460cJose Arriaga Maldonado1 years ago34internal OpenAIFileCollection(IEnumerable<OpenAIFile> data, string firstId, string lastId, bool hasMore)
9f9f2936Jose Arriaga Maldonado2 years ago35: base([.. data])
36{
37Argument.AssertNotNull(data, nameof(data));
0e0c460cJose Arriaga Maldonado1 years ago38FirstId = firstId;
39LastId = lastId;
40HasMore = hasMore;
9f9f2936Jose Arriaga Maldonado2 years ago41}
42
19ceae44ShivangiReja1 years ago43/// <summary> Initializes a new instance of <see cref="OpenAIFileCollection"/>. </summary>
9f9f2936Jose Arriaga Maldonado2 years ago44/// <param name="data"></param>
45/// <param name="object"></param>
46/// <param name="serializedAdditionalRawData"> Keeps track of any properties unknown to the library. </param>
0e0c460cJose Arriaga Maldonado1 years ago47internal OpenAIFileCollection(IReadOnlyList<OpenAIFile> data, string @object, string firstId, string lastId, bool hasMore, IDictionary<string, BinaryData> serializedAdditionalRawData)
9f9f2936Jose Arriaga Maldonado2 years ago48: base([.. data])
49{
50Object = @object;
19fc7d54Jose Arriaga Maldonado2 years ago51SerializedAdditionalRawData = serializedAdditionalRawData;
0e0c460cJose Arriaga Maldonado1 years ago52FirstId = firstId;
53LastId = lastId;
54HasMore = hasMore;
9f9f2936Jose Arriaga Maldonado2 years ago55}
56
19ceae44ShivangiReja1 years ago57/// <summary> Initializes a new instance of <see cref="OpenAIFileCollection"/> for deserialization. </summary>
58internal OpenAIFileCollection()
9f9f2936Jose Arriaga Maldonado2 years ago59: base([])
60{
61}
5dce104aJose Arriaga Maldonado1 years ago62
63internal static OpenAIFileCollection FromClientResult(ClientResult result)
64{
65using PipelineResponse response = result.GetRawResponse();
66using JsonDocument document = JsonDocument.Parse(response.Content);
67return DeserializeOpenAIFileCollection(document.RootElement, ModelSerializationExtensions.WireOptions);
68}
9f9f2936Jose Arriaga Maldonado2 years ago69}