Package-level declarations

Types

Link copied to clipboard
@Serializable
data class OdxClientKeywordRequest(val fields: List<String>? = null, val order: String? = null, val limit: Int? = null, val offset: Int? = null, val context: OdxClientRequestContext? = null)
Link copied to clipboard
@Serializable
data class OdxClientRequest(val id: String, val action: String, val modelId: String, val keyword: OdxClientKeywordRequest? = null, val fnName: String? = null, val params: JsonElement = JsonArray(emptyList()), val odooInstance: OdxInstanceInfo)
Link copied to clipboard
@Serializable
data class OdxClientRequestContext(val allowedCompanyIds: List<Int>? = null, val defaultCompanyId: Int? = null, val tz: String? = null, val lang: String? = null)
Link copied to clipboard
object OdxIdSerializer : KSerializer<String>

Robust ID Serializer. Matches Swift logic: accepts Int or String in JSON, always provides String in Code.

Link copied to clipboard
@Serializable
data class OdxInstanceInfo(val url: String, val userId: Int, val db: String, val apiKey: String)
Link copied to clipboard
@Serializable(with = OdxMany2OneSerializer::class)
data class OdxMany2One(val id: Int?, val name: String?)
Link copied to clipboard
object OdxMany2OneSerializer : KSerializer<OdxMany2One>
Link copied to clipboard
@Serializable
data class OdxServerErrorResponse(val code: Int, val message: String, val data: JsonElement? = null)
Link copied to clipboard
@Serializable
data class OdxServerResponse<T>(val jsonrpc: String, val id: String? = null, val result: T? = null, val error: OdxServerErrorResponse? = null)
Link copied to clipboard
@Serializable(with = OdxVariantSerializer::class)
data class OdxVariant<T>(val value: T?)
Link copied to clipboard
class OdxVariantSerializer<T>(dataSerializer: KSerializer<T>) : KSerializer<OdxVariant<T>>

Functions

Link copied to clipboard
fun toJsonElement(value: Any?): JsonElement