package com.juick.server.configuration; import com.juick.server.TelegramBotManager; import com.juick.server.XMPPBot; import com.juick.server.component.LikeEvent; import com.juick.server.component.MessageEvent; import com.juick.server.component.SubscribeEvent; import org.springframework.context.ApplicationListener; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import javax.inject.Inject; @Configuration public class EventsConfiguration { @Inject private TelegramBotManager telegramBotManager; @Inject private XMPPBot bot; @Bean ApplicationListener messageListener() { return event -> { telegramBotManager.processMessage(event.getMessage()); bot.processMessage(event.getMessage()); }; } @Bean ApplicationListener likeListener() { return event -> { telegramBotManager.processLike(event.getUser(), event.getMessage()); }; } @Bean ApplicationListener subscribeListener() { return event -> { telegramBotManager.processSubscribe(event.getUser(), event.getToUser()); }; } }