All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.http4k.connect.azure.AzureAIMoshi.kt Maven / Gradle / Ivy

package org.http4k.connect.azure

import com.squareup.moshi.JsonAdapter
import com.squareup.moshi.Moshi
import org.http4k.connect.model.Base64Blob
import org.http4k.connect.model.ModelName
import org.http4k.connect.model.Role
import org.http4k.connect.model.Timestamp
import org.http4k.format.ConfigurableMoshi
import org.http4k.format.ListAdapter
import org.http4k.format.MapAdapter
import org.http4k.format.asConfigurable
import org.http4k.format.value
import org.http4k.format.withStandardMappings
import se.ansman.kotshi.KotshiJsonAdapterFactory

object AzureAIMoshi : ConfigurableMoshi(
    Moshi.Builder()
        .add(AzureAIJsonAdapterFactory)
        .add(ListAdapter)
        .add(MapAdapter)
        .asConfigurable()
        .withStandardMappings()
        .value(Base64Blob)
        .value(CompletionId)
        .value(ModelName)
        .value(ModelProvider)
        .value(ModelType)
        .value(ObjectType)
        .value(ObjectId)
        .value(Prompt)
        .value(Role)
        .value(Timestamp)
        .value(TokenId)
        .value(User)
        .done()
)

@KotshiJsonAdapterFactory
object AzureAIJsonAdapterFactory : JsonAdapter.Factory by KotshiAzureAIJsonAdapterFactory




© 2015 - 2025 Weber Informatics LLC | Privacy Policy