Skip to content

Commit c9a0f17

Browse files
committed
Create TransactionPartnerAffiliateProgram
1 parent 7a8ab0a commit c9a0f17

File tree

3 files changed

+17
-0
lines changed

3 files changed

+17
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package com.pengrad.telegrambot.model.stars.partner
2+
3+
import com.pengrad.telegrambot.model.User
4+
import com.pengrad.telegrambot.model.stars.partner.TransactionPartnerType.AFFILIATE_PROGRAM
5+
6+
data class TransactionPartnerAffiliateProgram(
7+
@get:JvmName("sponsorUser") val sponsorUser: User? = null,
8+
@get:JvmName("commissionPerMille") val commissionPerMille: Int
9+
) : TransactionPartner {
10+
11+
override val type: String
12+
get() = AFFILIATE_PROGRAM
13+
14+
}

library/src/main/java/com/pengrad/telegrambot/model/stars/partner/TransactionPartnerType.kt

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package com.pengrad.telegrambot.model.stars.partner
33
object TransactionPartnerType {
44

55
const val USER = "user"
6+
const val AFFILIATE_PROGRAM = "affiliate_program"
67
const val FRAGMENT = "fragment"
78
const val TELEGRAM_ADS = "telegram_ads"
89
const val TELEGRAM_API = "telegram_api"

library/src/main/java/com/pengrad/telegrambot/utility/gson/TransactionPartnerTypeAdapter.kt

+2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package com.pengrad.telegrambot.utility.gson
22

33
import com.google.gson.*
44
import com.pengrad.telegrambot.model.stars.partner.*
5+
import com.pengrad.telegrambot.model.stars.partner.TransactionPartnerType.AFFILIATE_PROGRAM
56
import com.pengrad.telegrambot.model.stars.partner.TransactionPartnerType.FRAGMENT
67
import com.pengrad.telegrambot.model.stars.partner.TransactionPartnerType.OTHER
78
import com.pengrad.telegrambot.model.stars.partner.TransactionPartnerType.TELEGRAM_ADS
@@ -14,6 +15,7 @@ object TransactionPartnerTypeAdapter : JsonDeserializer<TransactionPartner> {
1415

1516
private val typeMapping = mapOf(
1617
USER to TransactionPartnerUser::class,
18+
AFFILIATE_PROGRAM to TransactionPartnerAffiliateProgram::class,
1719
FRAGMENT to TransactionPartnerFragment::class,
1820
TELEGRAM_ADS to TransactionPartnerTelegramAds::class,
1921
TELEGRAM_API to TransactionPartnerTelegramApi::class,

0 commit comments

Comments
 (0)