Skip to content

Commit dc86f02

Browse files
committed
Rewrite SendGame to Kotlin
1 parent 82e8cab commit dc86f02

File tree

3 files changed

+62
-14
lines changed

3 files changed

+62
-14
lines changed

library/src/main/java/com/pengrad/telegrambot/request/SendGame.java

-14
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package com.pengrad.telegrambot.request
2+
3+
import com.pengrad.telegrambot.utility.kotlin.checkDeprecatedConstructorParameters
4+
import com.pengrad.telegrambot.utility.kotlin.requestParameter
5+
6+
class SendGame private constructor(
7+
chatId: Long? = null,
8+
channelUsername: String? = null,
9+
10+
gameShortName: String
11+
) : KAbstractSendRequest<SendGame>(
12+
chatId = chatId,
13+
channelUsername = channelUsername,
14+
) {
15+
16+
constructor(chatId: Long, gameShortName: String) : this(
17+
chatId = chatId,
18+
channelUsername = null,
19+
gameShortName = gameShortName
20+
)
21+
22+
constructor(channelUsername: String, gameShortName: String) : this(
23+
chatId = null,
24+
channelUsername = channelUsername,
25+
gameShortName = gameShortName
26+
)
27+
28+
@Deprecated("Use constructor with chatId or channelUsername instead", ReplaceWith("SendGame(chatId, gameShortName)"))
29+
constructor(chatId: Any, gameShortName: String) : this(
30+
chatId = (chatId as? Number)?.toLong(),
31+
channelUsername = chatId as? String,
32+
gameShortName = gameShortName
33+
) {
34+
checkDeprecatedConstructorParameters()
35+
}
36+
37+
val gameShortName: String by requestParameter(gameShortName)
38+
39+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package com.pengrad.telegrambot.utility.kotlin.extension.request
2+
3+
import com.pengrad.telegrambot.TelegramAware
4+
import com.pengrad.telegrambot.request.SendGame
5+
import com.pengrad.telegrambot.utility.kotlin.extension.execute
6+
7+
inline fun TelegramAware.sendGame(
8+
chatId: Long,
9+
gameShortName: String,
10+
modifier: SendGame.() -> Unit = {}
11+
) = this.execute(SendGame(
12+
chatId = chatId,
13+
gameShortName = gameShortName
14+
), modifier)
15+
16+
inline fun TelegramAware.sendGame(
17+
channelUsername: String,
18+
gameShortName: String,
19+
modifier: SendGame.() -> Unit = {}
20+
) = this.execute(SendGame(
21+
channelUsername = channelUsername,
22+
gameShortName = gameShortName
23+
), modifier)

0 commit comments

Comments
 (0)