ConfigurableKotlinxSerialization

open class ConfigurableKotlinxSerialization(json: JsonBuilder.() -> Unit, val defaultContentType: ContentType = APPLICATION_JSON) : AutoMarshallingJson<JsonElement>

Inheritors

Constructors

Link copied to clipboard
constructor(json: JsonBuilder.() -> Unit, defaultContentType: ContentType = APPLICATION_JSON)

Properties

Link copied to clipboard
open override val defaultContentType: ContentType
Link copied to clipboard
val json: Json

Functions

Link copied to clipboard
open fun <T : JsonElement> array(value: T): JsonElement
open fun <T : JsonElement> array(value: Iterable<T>): JsonElement
Link copied to clipboard
inline fun <T : Any> asA(input: InputStream): T
inline fun <T : Any> asA(input: String): T
fun <T : Any> String.asA(target: KClass<T>): T
fun <T : Any> JsonElement.asA(target: KClass<T>): T
inline fun <T : Any> JsonElement.asA(): T
open override fun <T : Any> asA(input: InputStream, target: KClass<T>): T
open override fun <T : Any> asA(input: String, target: KClass<T>): T
open override fun <T : Any> asA(j: JsonElement, target: KClass<T>): T
Link copied to clipboard
open override fun JsonElement.asCompactJsonString(): String
Link copied to clipboard
open override fun asFormatString(input: Any): String
Link copied to clipboard
open fun asInputStream(input: Any): InputStream
Link copied to clipboard
open override fun <T : Iterable<JsonElement>> T.asJsonArray(): JsonArray
Link copied to clipboard
fun Any.asJsonObject(): JsonElement
open override fun <LIST : Iterable<Pair<String, JsonElement>>> LIST.asJsonObject(): JsonObject
open override fun String.asJsonObject(): JsonObject
open override fun asJsonObject(input: Any): JsonElement
Link copied to clipboard
open override fun BigDecimal?.asJsonValue(): JsonPrimitive
open override fun BigInteger?.asJsonValue(): JsonPrimitive
open override fun Boolean?.asJsonValue(): JsonPrimitive
open override fun Double?.asJsonValue(): JsonPrimitive
open override fun Int?.asJsonValue(): JsonPrimitive
open override fun Long?.asJsonValue(): JsonPrimitive
open override fun String?.asJsonValue(): JsonPrimitive
Link copied to clipboard
open override fun JsonElement.asPrettyJsonString(): String
Link copied to clipboard
inline fun <T : Any> Body.Companion.auto(description: String? = null, contentNegotiation: ContentNegotiation = None, contentType: ContentType = defaultContentType): BiDiBodyLensSpec<T>
Link copied to clipboard
inline fun <T : Any> autoBody(description: String? = null, contentNegotiation: ContentNegotiation = None, contentType: ContentType = defaultContentType): BiDiBodyLensSpec<T>
Link copied to clipboard
inline fun <IN : Any, OUT : Any> autoLens(lens: BiDiLensSpec<IN, String>): BiDiLensSpec<IN, OUT>
Link copied to clipboard
open fun body(description: String?, contentNegotiation: ContentNegotiation): BiDiBodyLensSpec<JsonElement>
Link copied to clipboard
open override fun bool(value: JsonElement): Boolean
Link copied to clipboard
open fun boolean(value: Boolean): JsonElement
Link copied to clipboard
open fun compact(node: JsonElement): String
Link copied to clipboard
open fun compactify(input: String): String
Link copied to clipboard
inline fun <IN : Any, OUT : Any> convert(input: IN): OUT
Link copied to clipboard
open override fun decimal(value: JsonElement): BigDecimal
Link copied to clipboard
open override fun elements(value: JsonElement): Collection<JsonElement>
Link copied to clipboard
open override fun fields(node: JsonElement): List<Pair<String, JsonElement>>
Link copied to clipboard
open override fun integer(value: JsonElement): Long
Link copied to clipboard
open operator fun <T> invoke(fn: Json<JsonElement>.() -> T): T
Link copied to clipboard
inline operator fun <T : Any, R : HttpMessage> ConfigurableKotlinxSerialization.invoke(item: T): (R) -> R
inline operator fun <T : Any> ConfigurableKotlinxSerialization.invoke(msg: HttpMessage): T
Link copied to clipboard
inline fun <T : Any> HttpMessage.json(): T

Convenience function to read an object as JSON from the message body.

inline fun <T : Any, R : HttpMessage> R.json(t: T): R

Convenience function to write the object as JSON to the message body and set the content type.

open fun <IN : Any> BiDiLensSpec<IN, String>.json(): BiDiLensSpec<IN, JsonElement>
open fun Body.Companion.json(description: String?, contentNegotiation: ContentNegotiation): BiDiBodyLensSpec<JsonElement>
Link copied to clipboard
open fun <IN : Any> jsonLens(spec: BiDiLensSpec<IN, String>): BiDiLensSpec<IN, JsonElement>
Link copied to clipboard
open fun nullNode(): JsonElement
Link copied to clipboard
open fun number(value: BigDecimal): JsonElement
open fun number(value: BigInteger): JsonElement
open fun number(value: Double): JsonElement
open fun number(value: Int): JsonElement
open fun number(value: Long): JsonElement
Link copied to clipboard
open fun obj(): JsonElement
open fun <T : JsonElement> obj(vararg fields: Pair<String, T>): JsonElement
open fun <T : JsonElement> obj(value: Iterable<Pair<String, T>>): JsonElement
Link copied to clipboard
open fun parse(input: String): JsonElement
Link copied to clipboard
open fun prettify(input: String): String
Link copied to clipboard
open fun pretty(node: JsonElement): String
Link copied to clipboard
open fun string(value: String): JsonElement
Link copied to clipboard
open override fun text(value: JsonElement): String
Link copied to clipboard
open override fun textValueOf(node: JsonElement, name: String): String?
Link copied to clipboard
open override fun typeOf(value: JsonElement): JsonType