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/08/31 10:10:19 UTC
svn commit: r809495 -
/mina/sandbox/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/stanza/StanzaBuilder.java
Author: berndf
Date: Mon Aug 31 08:10:18 2009
New Revision: 809495
URL: http://svn.apache.org/viewvc?rev=809495&view=rev
Log:
add convenience methods to create a forwarded stanza
Modified:
mina/sandbox/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/stanza/StanzaBuilder.java
Modified: mina/sandbox/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/stanza/StanzaBuilder.java
URL: http://svn.apache.org/viewvc/mina/sandbox/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/stanza/StanzaBuilder.java?rev=809495&r1=809494&r2=809495&view=diff
==============================================================================
--- mina/sandbox/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/stanza/StanzaBuilder.java (original)
+++ mina/sandbox/vysper/trunk/server/core/src/main/java/org/apache/vysper/xmpp/stanza/StanzaBuilder.java Mon Aug 31 08:10:18 2009
@@ -146,7 +146,34 @@
return stanzaBuilder;
}
+
+ /**
+ * creates a new stanza which only differs from the given original by 'from' and 'to' attributes.
+ *
+ * @param original
+ * @param from if NOT NULL, the new 'from'
+ * @param to if NOT NULL, the new 'to'
+ * @return stanza builder with to and from replaced
+ */
+ public static StanzaBuilder createForward(Stanza original, Entity from, Entity to) {
+ List<Attribute> toFromReplacements = new ArrayList<Attribute>(2);
+ if (to != null) toFromReplacements.add(new Attribute("to", to.getFullQualifiedName()));
+ if (from != null) toFromReplacements.add(new Attribute("from", from.getFullQualifiedName()));
+
+ return createClone(original, true, toFromReplacements);
+ }
+ /**
+ * convenience shortcut for {@link #createForward(Stanza, org.apache.vysper.xmpp.addressing.Entity, org.apache.vysper.xmpp.addressing.Entity)}
+ *
+ * @param original
+ * @param from if NOT NULL, the new 'from'
+ * @param to if NOT NULL, the new 'to'
+ * @return forward stanza
+ */
+ public static Stanza createForwardStanza(Stanza original, Entity from, Entity to) {
+ return createForward(original, from, to).getFinalStanza();
+ }
class ElementStruct {
public ElementStruct parentElement = null;