Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.megafon.bank.logic.api.model.response.payment
- import com.google.api.client.util.Key
- import ru.touchin.templates.googlejson.GoogleJsonModel
- import java.math.BigDecimal
- class MobilePaymentPreparationResponse : GoogleJsonModel() {
- @field:Key("payment")
- lateinit var payment: Payment
- private set
- class Payment : GoogleJsonModel() {
- @field:Key("id")
- lateinit var id: String
- private set
- @field:Key("to")
- lateinit var to: To
- private set
- @field:Key("from")
- lateinit var from: From
- private set
- override fun validate() {
- super.validate()
- validateNotNull(id)
- validateNotNull(to)
- validateNotNull(from)
- }
- }
- class From : GoogleJsonModel() {
- @field:Key("amount_min")
- lateinit var amountMin: BigDecimal
- private set
- @field: Key("amount_max")
- var amountMax: BigDecimal? = null
- private set
- override fun validate() {
- super.validate()
- validateNotNull(amountMin)
- }
- }
- class To : GoogleJsonModel() {
- @field:Key("account")
- lateinit var account: Account
- private set
- @field:Key("service")
- lateinit var service: Service
- private set
- override fun validate() {
- super.validate()
- validateNotNull(account)
- validateNotNull(service)
- }
- }
- class Account : GoogleJsonModel() {
- @field:Key("msisdn")
- lateinit var msisdn: String
- private set
- override fun validate() {
- super.validate()
- validateNotNull(msisdn)
- }
- }
- class Service : GoogleJsonModel() {
- @field:Key("id")
- lateinit var id: String
- private set
- @field:Key("name")
- var name: String? = null
- private set
- override fun validate() {
- super.validate()
- validateNotNull(id)
- }
- }
- override fun validate() {
- super.validate()
- validateNotNull(payment)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement