de.gesellix.docker.remote.api.PortJsonAdapter.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of docker-remote-api-model-1-45 Show documentation
Show all versions of docker-remote-api-model-1-45 Show documentation
API model for the Docker remote api v1.45
// Code generated by moshi-kotlin-codegen. Do not edit.
@file:Suppress("DEPRECATION", "unused", "UNUSED_PARAMETER", "ClassName", "REDUNDANT_PROJECTION",
"RedundantExplicitType", "LocalVariableName", "RedundantVisibilityModifier",
"PLATFORM_CLASS_MAPPED_TO_KOTLIN", "IMPLICIT_NOTHING_TYPE_ARGUMENT_IN_RETURN_POSITION")
package de.gesellix.docker.remote.api
import com.squareup.moshi.JsonAdapter
import com.squareup.moshi.JsonReader
import com.squareup.moshi.JsonWriter
import com.squareup.moshi.Moshi
import com.squareup.moshi.`internal`.Util
import java.lang.NullPointerException
import java.lang.reflect.Constructor
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.emptySet
import kotlin.jvm.Volatile
import kotlin.text.buildString
public class PortJsonAdapter(
moshi: Moshi,
) : JsonAdapter() {
private val options: JsonReader.Options = JsonReader.Options.of("PrivatePort", "Type", "IP",
"PublicPort")
private val intAdapter: JsonAdapter = moshi.adapter(Int::class.java, emptySet(),
"privatePort")
private val typeAdapter: JsonAdapter = moshi.adapter(Port.Type::class.java, emptySet(),
"type")
private val nullableStringAdapter: JsonAdapter = moshi.adapter(String::class.java,
emptySet(), "IP")
private val nullableIntAdapter: JsonAdapter = moshi.adapter(Int::class.javaObjectType,
emptySet(), "publicPort")
@Volatile
private var constructorRef: Constructor? = null
public override fun toString(): String = buildString(26) {
append("GeneratedJsonAdapter(").append("Port").append(')') }
public override fun fromJson(reader: JsonReader): Port {
var privatePort: Int? = null
var type: Port.Type? = null
var IP: String? = null
var publicPort: Int? = null
var mask0 = -1
reader.beginObject()
while (reader.hasNext()) {
when (reader.selectName(options)) {
0 -> privatePort = intAdapter.fromJson(reader) ?: throw Util.unexpectedNull("privatePort",
"PrivatePort", reader)
1 -> type = typeAdapter.fromJson(reader) ?: throw Util.unexpectedNull("type", "Type",
reader)
2 -> {
IP = nullableStringAdapter.fromJson(reader)
// $mask = $mask and (1 shl 2).inv()
mask0 = mask0 and 0xfffffffb.toInt()
}
3 -> {
publicPort = nullableIntAdapter.fromJson(reader)
// $mask = $mask and (1 shl 3).inv()
mask0 = mask0 and 0xfffffff7.toInt()
}
-1 -> {
// Unknown name, skip it.
reader.skipName()
reader.skipValue()
}
}
}
reader.endObject()
if (mask0 == 0xfffffff3.toInt()) {
// All parameters with defaults are set, invoke the constructor directly
return Port(
privatePort = privatePort ?: throw Util.missingProperty("privatePort", "PrivatePort",
reader),
type = type ?: throw Util.missingProperty("type", "Type", reader),
IP = IP,
publicPort = publicPort
)
} else {
// Reflectively invoke the synthetic defaults constructor
@Suppress("UNCHECKED_CAST")
val localConstructor: Constructor = this.constructorRef ?:
Port::class.java.getDeclaredConstructor(Int::class.javaPrimitiveType,
Port.Type::class.java, String::class.java, Int::class.javaObjectType,
Int::class.javaPrimitiveType, Util.DEFAULT_CONSTRUCTOR_MARKER).also {
this.constructorRef = it }
return localConstructor.newInstance(
privatePort ?: throw Util.missingProperty("privatePort", "PrivatePort", reader),
type ?: throw Util.missingProperty("type", "Type", reader),
IP,
publicPort,
mask0,
/* DefaultConstructorMarker */ null
)
}
}
public override fun toJson(writer: JsonWriter, value_: Port?): Unit {
if (value_ == null) {
throw NullPointerException("value_ was null! Wrap in .nullSafe() to write nullable values.")
}
writer.beginObject()
writer.name("PrivatePort")
intAdapter.toJson(writer, value_.privatePort)
writer.name("Type")
typeAdapter.toJson(writer, value_.type)
writer.name("IP")
nullableStringAdapter.toJson(writer, value_.IP)
writer.name("PublicPort")
nullableIntAdapter.toJson(writer, value_.publicPort)
writer.endObject()
}
}