diff options
author | Vitaly Takmazov | 2022-12-31 01:23:28 +0300 |
---|---|---|
committer | Vitaly Takmazov | 2022-12-31 01:23:28 +0300 |
commit | 47bdad85f7ac2b12daf1da4e340be902a568d976 (patch) | |
tree | e681e1380bcea9a071e0e0f7ff77e45bad19494c /src/main/java/com/juick/config | |
parent | 6754ad8bed7f7b82cfbb4b8d0948e8bfb7302191 (diff) |
Refactor XMPP connection
Diffstat (limited to 'src/main/java/com/juick/config')
-rw-r--r-- | src/main/java/com/juick/config/XMPPConfig.java | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/src/main/java/com/juick/config/XMPPConfig.java b/src/main/java/com/juick/config/XMPPConfig.java index ee2abab4..73077760 100644 --- a/src/main/java/com/juick/config/XMPPConfig.java +++ b/src/main/java/com/juick/config/XMPPConfig.java @@ -17,16 +17,56 @@ package com.juick.config; +import com.juick.CommandsManager; import com.juick.XMPPManager; +import com.juick.service.MessagesService; +import com.juick.service.PMQueriesService; +import com.juick.service.StorageService; +import com.juick.service.UserService; +import com.juick.www.WebApp; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.core.io.Resource; + +import javax.inject.Inject; +import java.util.concurrent.Executor; @Configuration @ConditionalOnProperty("xmppbot_jid") public class XMPPConfig { + @Value("${xmppbot_jid:juick@localhost}") + private String botJid; + @Value("${hostname:localhost}") + private String componentName; + @Value("${component_port:5347}") + private int componentPort; + @Value("${component_host:localhost}") + private String componentHost; + @Value("${xmpp_password:secret}") + private String password; + @Value("classpath:juick.png") + private Resource vCardImage; + @Inject + private CommandsManager commandsManager; + @Inject + private StorageService storageService; + @Inject + private MessagesService messagesService; + @Inject + private UserService userService; + @Inject + private PMQueriesService pmQueriesService; + @Inject + private Executor applicationTaskExecutor; + @Inject + private WebApp webApp; + @Bean(destroyMethod = "close") XMPPManager xmppConnection() { - return new XMPPManager(); + return new XMPPManager(botJid, componentName, componentPort, componentHost, password, vCardImage, + commandsManager, storageService, messagesService, userService, pmQueriesService, + applicationTaskExecutor, webApp); } } |