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

tech.carpentum.sdk.payment.internal.generated.model.AvailableTopUpOptionJsonJsonAdapter.kt Maven / Gradle / Ivy

The newest version!
// 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 tech.carpentum.sdk.payment.`internal`.generated.model

import com.squareup.moshi.JsonAdapter
import com.squareup.moshi.JsonReader
import com.squareup.moshi.JsonWriter
import com.squareup.moshi.Moshi
import com.squareup.moshi.Types
import java.lang.NullPointerException
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.emptySet
import kotlin.text.buildString
import tech.carpentum.sdk.payment.model.Money
import tech.carpentum.sdk.payment.model.PayinMethodCode
import tech.carpentum.sdk.payment.model.PaymentOperatorIncoming

public class AvailableTopUpOptionJsonJsonAdapter(
  moshi: Moshi,
) : JsonAdapter() {
  private val options: JsonReader.Options = JsonReader.Options.of("moneyPay", "moneyReceive",
      "paymentMethodCode", "paymentOperators")

  private val nullableMoneyAdapter: JsonAdapter = moshi.adapter(Money::class.java,
      emptySet(), "moneyPay")

  private val nullablePayinMethodCodeAdapter: JsonAdapter =
      moshi.adapter(PayinMethodCode::class.java, emptySet(), "paymentMethodCode")

  private val nullableListOfPaymentOperatorIncomingAdapter:
      JsonAdapter?> =
      moshi.adapter(Types.newParameterizedType(List::class.java,
      PaymentOperatorIncoming::class.java), emptySet(), "paymentOperators")

  public override fun toString(): String = buildString(46) {
      append("GeneratedJsonAdapter(").append("AvailableTopUpOptionJson").append(')') }

  public override fun fromJson(reader: JsonReader): AvailableTopUpOptionJson {
    var moneyPay: Money? = null
    var moneyPaySet: Boolean = false
    var moneyReceive: Money? = null
    var moneyReceiveSet: Boolean = false
    var paymentMethodCode: PayinMethodCode? = null
    var paymentMethodCodeSet: Boolean = false
    var paymentOperators: List? = null
    var paymentOperatorsSet: Boolean = false
    reader.beginObject()
    while (reader.hasNext()) {
      when (reader.selectName(options)) {
        0 -> {
          moneyPay = nullableMoneyAdapter.fromJson(reader)
          moneyPaySet = true
        }
        1 -> {
          moneyReceive = nullableMoneyAdapter.fromJson(reader)
          moneyReceiveSet = true
        }
        2 -> {
          paymentMethodCode = nullablePayinMethodCodeAdapter.fromJson(reader)
          paymentMethodCodeSet = true
        }
        3 -> {
          paymentOperators = nullableListOfPaymentOperatorIncomingAdapter.fromJson(reader)
          paymentOperatorsSet = true
        }
        -1 -> {
          // Unknown name, skip it.
          reader.skipName()
          reader.skipValue()
        }
      }
    }
    reader.endObject()
    val result: AvailableTopUpOptionJson
    result = AvailableTopUpOptionJson(
    )
    if (moneyPaySet) {
      result.moneyPay = moneyPay
    }
    if (moneyReceiveSet) {
      result.moneyReceive = moneyReceive
    }
    if (paymentMethodCodeSet) {
      result.paymentMethodCode = paymentMethodCode
    }
    if (paymentOperatorsSet) {
      result.paymentOperators = paymentOperators
    }
    return result
  }

  public override fun toJson(writer: JsonWriter, value_: AvailableTopUpOptionJson?): Unit {
    if (value_ == null) {
      throw NullPointerException("value_ was null! Wrap in .nullSafe() to write nullable values.")
    }
    writer.beginObject()
    writer.name("moneyPay")
    nullableMoneyAdapter.toJson(writer, value_.moneyPay)
    writer.name("moneyReceive")
    nullableMoneyAdapter.toJson(writer, value_.moneyReceive)
    writer.name("paymentMethodCode")
    nullablePayinMethodCodeAdapter.toJson(writer, value_.paymentMethodCode)
    writer.name("paymentOperators")
    nullableListOfPaymentOperatorIncomingAdapter.toJson(writer, value_.paymentOperators)
    writer.endObject()
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy