Updated Branches: refs/heads/master 14e2c6a45 -> 221efb7a7
VYSPER-343: enabling federation now possible in spring Project: http://git-wip-us.apache.org/repos/asf/mina-vysper/repo Commit: http://git-wip-us.apache.org/repos/asf/mina-vysper/commit/221efb7a Tree: http://git-wip-us.apache.org/repos/asf/mina-vysper/tree/221efb7a Diff: http://git-wip-us.apache.org/repos/asf/mina-vysper/diff/221efb7a Branch: refs/heads/master Commit: 221efb7a783aa9d395c74d26a7ba269cbab27414 Parents: 14e2c6a Author: Bernd Fondermann <[email protected]> Authored: Fri Jun 21 17:21:24 2013 +0200 Committer: Bernd Fondermann <[email protected]> Committed: Fri Jun 21 17:21:24 2013 +0200 ---------------------------------------------------------------------- .../vysper/spring/SpringCompatibleXMPPServer.java | 16 +++++++++++++++- .../org/apache/vysper/xmpp/server/XMPPServer.java | 6 +++++- 2 files changed, 20 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mina-vysper/blob/221efb7a/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java ---------------------------------------------------------------------- diff --git a/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java b/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java index e191e12..e3aba16 100644 --- a/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java +++ b/server/core/src/main/java/org/apache/vysper/spring/SpringCompatibleXMPPServer.java @@ -27,6 +27,7 @@ import java.util.List; import org.apache.vysper.xmpp.modules.Module; import org.apache.vysper.xmpp.server.Endpoint; +import org.apache.vysper.xmpp.server.ServerFeatures; import org.apache.vysper.xmpp.server.XMPPServer; import org.springframework.core.io.Resource; @@ -41,6 +42,8 @@ public class SpringCompatibleXMPPServer extends XMPPServer { protected final List<Module> listOfModules = new ArrayList<Module>(); protected File certificateFile = null; protected String certificatePassword = null; + + protected boolean enableFederationFeature = false; public SpringCompatibleXMPPServer(String domain) { super(domain); @@ -63,7 +66,18 @@ public class SpringCompatibleXMPPServer extends XMPPServer { public void setModules(Collection<Module> modules) { listOfModules.addAll(modules); } - + + public void setEnableFederationFeature(boolean enableFederationFeature) { + this.enableFederationFeature = enableFederationFeature; + } + + @Override + protected ServerFeatures createServerFeatures() { + final ServerFeatures serverFeatures = super.createServerFeatures(); + serverFeatures.setRelayingToFederationServers(enableFederationFeature); + return serverFeatures; + } + public void init() throws Exception { setTLSCertificateInfo(certificateFile, certificatePassword); start(); http://git-wip-us.apache.org/repos/asf/mina-vysper/blob/221efb7a/server/core/src/main/java/org/apache/vysper/xmpp/server/XMPPServer.java ---------------------------------------------------------------------- diff --git a/server/core/src/main/java/org/apache/vysper/xmpp/server/XMPPServer.java b/server/core/src/main/java/org/apache/vysper/xmpp/server/XMPPServer.java index e8f27e4..1cec6dd 100644 --- a/server/core/src/main/java/org/apache/vysper/xmpp/server/XMPPServer.java +++ b/server/core/src/main/java/org/apache/vysper/xmpp/server/XMPPServer.java @@ -166,7 +166,7 @@ public class XMPPServer { stanzaRelayBroker.setInternalRelay(internalStanzaRelay); stanzaRelayBroker.setExternalRelay(externalStanzaRelay); - ServerFeatures serverFeatures = new ServerFeatures(); + ServerFeatures serverFeatures = createServerFeatures(); serverFeatures.setAuthenticationMethods(saslMechanisms); serverRuntimeContext = new DefaultServerRuntimeContext(serverEntity, stanzaRelayBroker, serverFeatures, @@ -193,6 +193,10 @@ public class XMPPServer { } } + protected ServerFeatures createServerFeatures() { + return new ServerFeatures(); + } + public void stop() { for (Endpoint endpoint : endpoints) { endpoint.stop();
