public override void Write()

in src/WebJobs.Extensions.OpenAI/Search/SearchableDocumentJsonConverter.cs [79:135]


    public override void Write(Utf8JsonWriter writer, SearchableDocument value, JsonSerializerOptions options)
    {
        writer.WriteStartObject();

        writer.WritePropertyName("embeddingsContext"u8);
        writer.WriteStartObject();

        if (value.Embeddings?.Request is List<string> inputList)
        {
            writer.WritePropertyName("request"u8);
            var inputWrapper = JsonModelListWrapper.FromList(inputList);
            inputWrapper.Write(writer, modelReaderWriterOptions);
        }

        if (value.Embeddings?.Response is IJsonModel<OpenAIEmbeddingCollection> response)
        {
            writer.WritePropertyName("response"u8);
            response.Write(writer, modelReaderWriterOptions);
        }

        if (value.Embeddings != null)
        {
            writer.WritePropertyName("count"u8);
            writer.WriteNumberValue(value.Embeddings.Count);
        }
        writer.WriteEndObject();

        writer.WritePropertyName("connectionInfo"u8);
        writer.WriteStartObject();
        writer.WritePropertyName("connectionName"u8);

        if (value.ConnectionInfo == null)
        {
            writer.WriteNullValue();
        }
        else
        {
            writer.WriteStringValue(value.ConnectionInfo.ConnectionName);
        }

        writer.WritePropertyName("collectionName"u8);

        if (value.ConnectionInfo == null)
        {
            writer.WriteNullValue();
        }
        else
        {
            writer.WriteStringValue(value.ConnectionInfo.CollectionName);
        }
        writer.WriteEndObject();


        writer.WritePropertyName("title");
        writer.WriteStringValue(value.Title);
        writer.WriteEndObject();
    }