aboutsummaryrefslogtreecommitdiff
path: root/juick-xmpp/src/main/java/com/juick/components/s2s/ConnectionRouter.java
diff options
context:
space:
mode:
Diffstat (limited to 'juick-xmpp/src/main/java/com/juick/components/s2s/ConnectionRouter.java')
-rw-r--r--juick-xmpp/src/main/java/com/juick/components/s2s/ConnectionRouter.java27
1 files changed, 8 insertions, 19 deletions
diff --git a/juick-xmpp/src/main/java/com/juick/components/s2s/ConnectionRouter.java b/juick-xmpp/src/main/java/com/juick/components/s2s/ConnectionRouter.java
index 16c2019a..61b216db 100644
--- a/juick-xmpp/src/main/java/com/juick/components/s2s/ConnectionRouter.java
+++ b/juick-xmpp/src/main/java/com/juick/components/s2s/ConnectionRouter.java
@@ -6,8 +6,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import rocks.xmpp.addr.Jid;
import rocks.xmpp.core.XmppException;
-import rocks.xmpp.core.session.Extension;
-import rocks.xmpp.core.session.XmppSessionConfiguration;
import rocks.xmpp.core.stanza.model.Message;
import rocks.xmpp.core.stanza.model.Stanza;
import rocks.xmpp.extensions.component.accept.ExternalComponent;
@@ -27,7 +25,7 @@ import java.util.List;
/**
* @author ugnich
*/
-public class ConnectionRouter implements Runnable, AutoCloseable {
+public class ConnectionRouter implements AutoCloseable {
private static final Logger logger = LoggerFactory.getLogger(ConnectionRouter.class);
@@ -37,20 +35,13 @@ public class ConnectionRouter implements Runnable, AutoCloseable {
private ExternalComponent router;
private XMPPServer xmpp;
- public ConnectionRouter(XMPPServer s2s, String componentName, int componentPort, String password) throws Exception {
+ public ConnectionRouter(XMPPServer s2s, String componentName, int componentPort, String password) {
this.xmpp = s2s;
this.componentName = componentName;
this.componentPort = componentPort;
this.password = password;
- }
-
- @Override
- public void run() {
logger.info("stream router start");
- XmppSessionConfiguration configuration = XmppSessionConfiguration.builder()
- .extensions(Extension.of(com.juick.Message.class))
- .build();
- router = ExternalComponent.create(componentName, password, configuration, "localhost", componentPort);
+ router = ExternalComponent.create(componentName, password, xmpp.getSession().getConfiguration(), "localhost", componentPort);
router.addInboundMessageListener(e -> {
Message message = e.getMessage();
Jid jid = message.getTo();
@@ -74,13 +65,11 @@ public class ConnectionRouter implements Runnable, AutoCloseable {
route(jid.getDomain(), message);
}
});
- xmpp.service.submit(() -> {
- try {
- router.connect();
- } catch (XmppException e) {
- logger.warn("xmpp exception", e);
- }
- });
+ try {
+ router.connect();
+ } catch (XmppException e) {
+ logger.warn("xmpp exception", e);
+ }
}
void route(String domain, Stanza stanza) {