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

tech.carpentum.sdk.payment.internal.generated.model.TopUpDetailJsonJsonAdapter.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 java.lang.NullPointerException
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.emptySet
import kotlin.text.buildString
import tech.carpentum.sdk.payment.model.MoneyFee
import tech.carpentum.sdk.payment.model.PayinMethodResponse
import tech.carpentum.sdk.payment.model.PaymentProcess
import tech.carpentum.sdk.payment.model.TopUpRequestedDetail

public class TopUpDetailJsonJsonAdapter(
  moshi: Moshi,
) : JsonAdapter() {
  private val options: JsonReader.Options = JsonReader.Options.of("topUpRequested", "process",
      "fee", "paymentMethodResponse")

  private val nullableTopUpRequestedDetailAdapter: JsonAdapter =
      moshi.adapter(TopUpRequestedDetail::class.java, emptySet(), "topUpRequested")

  private val nullablePaymentProcessAdapter: JsonAdapter =
      moshi.adapter(PaymentProcess::class.java, emptySet(), "process")

  private val nullableMoneyFeeAdapter: JsonAdapter = moshi.adapter(MoneyFee::class.java,
      emptySet(), "fee")

  private val nullablePayinMethodResponseAdapter: JsonAdapter =
      moshi.adapter(PayinMethodResponse::class.java, emptySet(), "paymentMethodResponse")

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

  public override fun fromJson(reader: JsonReader): TopUpDetailJson {
    var topUpRequested: TopUpRequestedDetail? = null
    var topUpRequestedSet: Boolean = false
    var process: PaymentProcess? = null
    var processSet: Boolean = false
    var fee: MoneyFee? = null
    var feeSet: Boolean = false
    var paymentMethodResponse: PayinMethodResponse? = null
    var paymentMethodResponseSet: Boolean = false
    reader.beginObject()
    while (reader.hasNext()) {
      when (reader.selectName(options)) {
        0 -> {
          topUpRequested = nullableTopUpRequestedDetailAdapter.fromJson(reader)
          topUpRequestedSet = true
        }
        1 -> {
          process = nullablePaymentProcessAdapter.fromJson(reader)
          processSet = true
        }
        2 -> {
          fee = nullableMoneyFeeAdapter.fromJson(reader)
          feeSet = true
        }
        3 -> {
          paymentMethodResponse = nullablePayinMethodResponseAdapter.fromJson(reader)
          paymentMethodResponseSet = true
        }
        -1 -> {
          // Unknown name, skip it.
          reader.skipName()
          reader.skipValue()
        }
      }
    }
    reader.endObject()
    val result: TopUpDetailJson
    result = TopUpDetailJson(
    )
    if (topUpRequestedSet) {
      result.topUpRequested = topUpRequested
    }
    if (processSet) {
      result.process = process
    }
    if (feeSet) {
      result.fee = fee
    }
    if (paymentMethodResponseSet) {
      result.paymentMethodResponse = paymentMethodResponse
    }
    return result
  }

  public override fun toJson(writer: JsonWriter, value_: TopUpDetailJson?): Unit {
    if (value_ == null) {
      throw NullPointerException("value_ was null! Wrap in .nullSafe() to write nullable values.")
    }
    writer.beginObject()
    writer.name("topUpRequested")
    nullableTopUpRequestedDetailAdapter.toJson(writer, value_.topUpRequested)
    writer.name("process")
    nullablePaymentProcessAdapter.toJson(writer, value_.process)
    writer.name("fee")
    nullableMoneyFeeAdapter.toJson(writer, value_.fee)
    writer.name("paymentMethodResponse")
    nullablePayinMethodResponseAdapter.toJson(writer, value_.paymentMethodResponse)
    writer.endObject()
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy