mj...@apache.org wrote: > Author: mjakl > Date: Sun Jul 5 12:42:26 2009 > New Revision: 791236 > > URL: http://svn.apache.org/viewvc?rev=791236&view=rev > Log: > Take the sender address either from the "from" attribute provided in the > stanza or, if it is not present, take the JID from the initiating entity.
I'd like to propose to move AbstractPublishSubscribeIQHandler.getFromAddress() up to XMPPCoreStanzaHandler. WDYT? Bernd > > Modified: > > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/AbstractPublishSubscribeIQHandler.java > > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubCreateNodeHandler.java > > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubPublishHandler.java > > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubSubscribeHandler.java > > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubUnsubscribeHandler.java > > Modified: > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/AbstractPublishSubscribeIQHandler.java > URL: > http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/AbstractPublishSubscribeIQHandler.java?rev=791236&r1=791235&r2=791236&view=diff > ============================================================================== > --- > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/AbstractPublishSubscribeIQHandler.java > (original) > +++ > mina/sandbox/vysper/trunk/src/main/java/org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/AbstractPublishSubscribeIQHandler.java > Sun Jul 5 12:42:26 2009 > @@ -20,8 +20,11 @@ > package org.apache.vysper.xmpp.modules.extension.xep0060_pubsub; > > import org.apache.vysper.compliance.SpecCompliant; > +import org.apache.vysper.xmpp.addressing.Entity; > import org.apache.vysper.xmpp.modules.core.base.handler.DefaultIQHandler; > import > org.apache.vysper.xmpp.modules.extension.xep0060_pubsub.model.CollectionNode; > +import org.apache.vysper.xmpp.server.SessionContext; > +import org.apache.vysper.xmpp.stanza.IQStanza; > import org.apache.vysper.xmpp.stanza.Stanza; > import org.apache.vysper.xmpp.uuid.JVMBuiltinUUIDGenerator; > import org.apache.vysper.xmpp.uuid.UUIDGenerator; > @@ -97,4 +100,20 @@ > * @return the name of the inner element this class is expecting. > */ > protected abstract String getWorkerElement(); > + > + /** > + * Extracts the from address either from the "from" attribute of the > stanza, if this isn't given > + * retracts to using the address of the initiating entity. > + * > + * @param stanza > + * @param sessionContext > + * @return The JID of the sender. > + */ > + protected Entity getFromAddress(IQStanza stanza, SessionContext > sessionContext) { > + Entity sender = stanza.getFrom(); > + if(sender == null) { > + sender = sessionContext.getInitiatingEntity(); > + } > + return sender; > + } > }