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

tech.carpentum.sdk.payment.internal.generated.model.AvailablePayinOptionJsonJsonAdapter.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.PayinMethodCode
import tech.carpentum.sdk.payment.model.PaymentOperatorIncoming
import tech.carpentum.sdk.payment.model.SegmentCode

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

  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")

  private val nullableSegmentCodeAdapter: JsonAdapter =
      moshi.adapter(SegmentCode::class.java, emptySet(), "segmentCode")

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

  public override fun fromJson(reader: JsonReader): AvailablePayinOptionJson {
    var paymentMethodCode: PayinMethodCode? = null
    var paymentMethodCodeSet: Boolean = false
    var paymentOperators: List? = null
    var paymentOperatorsSet: Boolean = false
    var segmentCode: SegmentCode? = null
    var segmentCodeSet: Boolean = false
    reader.beginObject()
    while (reader.hasNext()) {
      when (reader.selectName(options)) {
        0 -> {
          paymentMethodCode = nullablePayinMethodCodeAdapter.fromJson(reader)
          paymentMethodCodeSet = true
        }
        1 -> {
          paymentOperators = nullableListOfPaymentOperatorIncomingAdapter.fromJson(reader)
          paymentOperatorsSet = true
        }
        2 -> {
          segmentCode = nullableSegmentCodeAdapter.fromJson(reader)
          segmentCodeSet = true
        }
        -1 -> {
          // Unknown name, skip it.
          reader.skipName()
          reader.skipValue()
        }
      }
    }
    reader.endObject()
    val result: AvailablePayinOptionJson
    result = AvailablePayinOptionJson(
    )
    if (paymentMethodCodeSet) {
      result.paymentMethodCode = paymentMethodCode
    }
    if (paymentOperatorsSet) {
      result.paymentOperators = paymentOperators
    }
    if (segmentCodeSet) {
      result.segmentCode = segmentCode
    }
    return result
  }

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy