You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by be...@apache.org on 2009/04/28 10:10:04 UTC

svn commit: r769280 - in /mina/sandbox/vysper/trunk/src/main: config/ java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/ java/org/apache/vysper/xmpp/protocol/ java/org/apache/vysper/xmpp/server/

Author: berndf
Date: Tue Apr 28 08:10:03 2009
New Revision: 769280

URL: http://svn.apache.org/viewvc?rev=769280&view=rev
Log:
[vysper] VYSPER-26 patch by Michael Jakl. thanks for contributing! applying patch partly, leaving out the handlers for now.

Added:
    mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/
    mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java
Modified:
    mina/sandbox/vysper/trunk/src/main/config/spring-config.xml
    mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/protocol/NamespaceURIs.java
    mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/server/ServerMain.java

Modified: mina/sandbox/vysper/trunk/src/main/config/spring-config.xml
URL: http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/src/main/config/spring-config.xml?rev=769280&r1=769279&r2=769280&view=diff
==============================================================================
--- mina/sandbox/vysper/trunk/src/main/config/spring-config.xml (original)
+++ mina/sandbox/vysper/trunk/src/main/config/spring-config.xml Tue Apr 28 08:10:03 2009
@@ -103,6 +103,7 @@
                 <bean class="org.apache.vysper.xmpp.modules.servicediscovery.ServiceDiscoveryModule" />
                 <bean class="org.apache.vysper.xmpp.modules.roster.RosterModule" />
                 <bean class="org.apache.vysper.xmpp.modules.extension.xep0092_software_version.SoftwareVersionModule" />
+                <bean class="org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.PublishSubscribeModule" />
             </list>
         </property>
     </bean>

Added: mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java
URL: http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java?rev=769280&view=auto
==============================================================================
--- mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java (added)
+++ mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java Tue Apr 28 08:10:03 2009
@@ -0,0 +1,74 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ *
+ */
+package org.apache.vysper.xmpp.modules.extension.xep0060_pubsub;
+
+import org.apache.vysper.xmpp.modules.DefaultDiscoAwareModule;
+import org.apache.vysper.xmpp.modules.servicediscovery.management.Feature;
+import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoElement;
+import org.apache.vysper.xmpp.modules.servicediscovery.management.InfoRequest;
+import org.apache.vysper.xmpp.modules.servicediscovery.management.ServerInfoRequestListener;
+import org.apache.vysper.xmpp.modules.servicediscovery.management.ServiceDiscoveryRequestException;
+import org.apache.vysper.xmpp.protocol.HandlerDictionary;
+import org.apache.vysper.xmpp.protocol.NamespaceHandlerDictionary;
+import org.apache.vysper.xmpp.protocol.NamespaceURIs;
+import org.apache.vysper.xmpp.server.ServerRuntimeContext;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Initializes the XEP0060 module.
+ *
+ * @author The Apache MINA Project (dev@mina.apache.org)
+ * @version $Rev$, $Date$
+ */
+public class PublishSubscribeModule extends DefaultDiscoAwareModule implements
+		ServerInfoRequestListener {
+
+	@Override
+	public void initialize(ServerRuntimeContext serverRuntimeContext) {
+		super.initialize(serverRuntimeContext);
+	}
+	
+	@Override
+	public String getName() {
+		return "XEP-0060 Publish-Subscribe";
+	}
+
+	@Override
+	public String getVersion() {
+		return "1.13rc3";
+	}
+
+	public List<InfoElement> getServerInfosFor(InfoRequest request)
+			throws ServiceDiscoveryRequestException {
+        List<InfoElement> infoElements = new ArrayList<InfoElement>();
+        infoElements.add(new Feature(NamespaceURIs.XEP0060_PUBSUB));
+        infoElements.add(new Feature(NamespaceURIs.XEP0060_PUBSUB_OWNER));
+        return infoElements;
+	}
+	
+    @Override
+    protected void addHandlerDictionaries(List<HandlerDictionary> dictionary) {
+        dictionary.add(new NamespaceHandlerDictionary(NamespaceURIs.XEP0060_PUBSUB));
+        dictionary.add(new NamespaceHandlerDictionary(NamespaceURIs.XEP0060_PUBSUB_OWNER));
+    }
+
+}

Modified: mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/protocol/NamespaceURIs.java
URL: http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/protocol/NamespaceURIs.java?rev=769280&r1=769279&r2=769280&view=diff
==============================================================================
--- mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/protocol/NamespaceURIs.java (original)
+++ mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/protocol/NamespaceURIs.java Tue Apr 28 08:10:03 2009
@@ -48,4 +48,7 @@
     public static final String VCARD_TEMP  = "vcard-temp";
     public static final String XEP0030_SERVICE_DISCOVERY_ITEMS = "http://jabber.org/protocol/disco#items";
     public static final String XEP0030_SERVICE_DISCOVERY_INFO  = "http://jabber.org/protocol/disco#info";
+    public static final String XEP0060_PUBSUB = "http://jabber.org/protocol/pubsub";
+    public static final String XEP0060_PUBSUB_OWNER = "http://jabber.org/protocol/pubsub#owner";
+
 }

Modified: mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/server/ServerMain.java
URL: http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/server/ServerMain.java?rev=769280&r1=769279&r2=769280&view=diff
==============================================================================
--- mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/server/ServerMain.java (original)
+++ mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/server/ServerMain.java Tue Apr 28 08:10:03 2009
@@ -27,6 +27,7 @@
 import org.apache.vysper.xmpp.authorization.AccountCreationException;
 import org.apache.vysper.xmpp.authorization.AccountManagement;
 import org.apache.vysper.xmpp.modules.extension.xep0054_vcardtemp.VcardTempModule;
+import org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.PublishSubscribeModule;
 import org.apache.vysper.xmpp.modules.extension.xep0092_software_version.SoftwareVersionModule;
 import org.apache.vysper.xmpp.modules.extension.xep0202_entity_time.EntityTimeModule;
 
@@ -74,5 +75,6 @@
         server.addModule(new SoftwareVersionModule());
         server.addModule(new EntityTimeModule());
         server.addModule(new VcardTempModule());
+        server.addModule(new PublishSubscribeModule());
     }
 }