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

com.github.insanusmokrassar.AutoPostTelegramBot.utils.CallbackQueryReceiver.kt Maven / Gradle / Ivy

package com.github.insanusmokrassar.AutoPostTelegramBot.utils

import com.github.insanusmokrassar.AutoPostTelegramBot.callbackQueryListener
import com.github.insanusmokrassar.AutoPostTelegramBot.utils.extensions.subscribe
import com.pengrad.telegrambot.TelegramBot
import com.pengrad.telegrambot.model.CallbackQuery
import java.lang.ref.WeakReference

abstract class CallbackQueryReceiver(
    bot: TelegramBot
) {
    init {
        val botWR = WeakReference(bot)

        callbackQueryListener.subscribe {
            invoke(
                it.second,
                botWR.get()
            )
        }
    }

    protected abstract fun invoke(
        query: CallbackQuery,
        bot: TelegramBot?
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy