com.github.kshashov.telegram.api.bind.annotation.BotController Maven / Gradle / Ivy
package com.github.kshashov.telegram.api.bind.annotation;
import com.github.kshashov.telegram.TelegramControllerBeanPostProcessor;
import com.github.kshashov.telegram.api.TelegramMvcController;
import com.github.kshashov.telegram.config.TelegramBotProperties;
import org.springframework.stereotype.Component;
import java.lang.annotation.*;
/**
* Indicates that an annotated class is a "Controller" (e.g. a web controller).
*
* This annotation serves as a specialization of {@link Component @Component},
* allowing for implementation classes to be autodetected through classpath scanning. It is supposed to used in
* combination with annotated handler methods based on the {@link BotRequest} annotation.
*
*
Note: all classes marked with annotation {@link BotController}
* must inherit {@link TelegramMvcController}.
*
* @see Component
* @see BotRequest
* @see TelegramMvcController
* @see TelegramControllerBeanPostProcessor
* @see TelegramBotProperties
*/
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface BotController {
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy