aboutsummaryrefslogtreecommitdiff
path: root/juick-server/src/main/java/com/juick/server/configuration/EventsConfiguration.java
diff options
context:
space:
mode:
Diffstat (limited to 'juick-server/src/main/java/com/juick/server/configuration/EventsConfiguration.java')
-rw-r--r--juick-server/src/main/java/com/juick/server/configuration/EventsConfiguration.java39
1 files changed, 39 insertions, 0 deletions
diff --git a/juick-server/src/main/java/com/juick/server/configuration/EventsConfiguration.java b/juick-server/src/main/java/com/juick/server/configuration/EventsConfiguration.java
new file mode 100644
index 00000000..4edc9dde
--- /dev/null
+++ b/juick-server/src/main/java/com/juick/server/configuration/EventsConfiguration.java
@@ -0,0 +1,39 @@
+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<MessageEvent> messageListener() {
+ return event -> {
+ telegramBotManager.processMessage(event.getMessage());
+ bot.processMessage(event.getMessage());
+ };
+ }
+ @Bean
+ ApplicationListener<LikeEvent> likeListener() {
+ return event -> {
+ telegramBotManager.processLike(event.getUser(), event.getMessage());
+ };
+ }
+ @Bean
+ ApplicationListener<SubscribeEvent> subscribeListener() {
+ return event -> {
+ telegramBotManager.processSubscribe(event.getUser(), event.getToUser());
+ };
+ }
+}