diff options
author | Tarun Gupta <tarun1995gupta@gmail.com> | 2015-07-02 09:55:38 (GMT) |
---|---|---|
committer | Tarun Gupta <tarun1995gupta@gmail.com> | 2015-07-21 09:26:58 (GMT) |
commit | e98df2cfcd3bc553b16c139a7d2adfcbe672b540 (patch) | |
tree | 449b58d27884ae4fa7441cea3c3ee7c9f0410dd4 /src/com/isode/stroke/elements | |
parent | 43b51821ff8d03aa55209c66ea3e26080cf3cb8c (diff) | |
download | stroke-e98df2cfcd3bc553b16c139a7d2adfcbe672b540.zip stroke-e98df2cfcd3bc553b16c139a7d2adfcbe672b540.tar.bz2 |
Adds Disco Features.
Adds DiscoServiceWalker, FeatureOracle, JIDDiscoInfoResponder.
Updates CapsInfoGenerator, ClientDiscoManager,
EntityCapsManager, EntityCapsProvider, IQ Element, Request.
License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
Test-Information:
Tests added for:
CapsInfoGenerator, CapsManager, DiscoInfoResponder, EntityCapsManager, JIDDiscoInfoResponder.
All tests pass.
Change-Id: Ib7cd08ff6f72b7649e4819943b627459c69a1397
Diffstat (limited to 'src/com/isode/stroke/elements')
-rw-r--r-- | src/com/isode/stroke/elements/IQ.java | 52 |
1 files changed, 42 insertions, 10 deletions
diff --git a/src/com/isode/stroke/elements/IQ.java b/src/com/isode/stroke/elements/IQ.java index d06d3a6..84645e4 100644 --- a/src/com/isode/stroke/elements/IQ.java +++ b/src/com/isode/stroke/elements/IQ.java @@ -33,35 +33,55 @@ public class IQ extends Stanza { public static IQ createRequest(Type type, JID to, String id, Payload payload) { IQ iq = new IQ(type); - iq.setTo(to); + if(to.isValid()) { + iq.setTo(to); + } iq.setID(id); - iq.addPayload(payload); + if(payload != null) { + iq.addPayload(payload); + } return iq; } + public static IQ createResult(JID to, String id) { + return createResult(to, id, null); + } + public static IQ createResult(JID to, String id, Payload payload) { IQ iq = new IQ(Type.Result); iq.setTo(to); iq.setID(id); - iq.addPayload(payload); + if(payload != null) { + iq.addPayload(payload); + } return iq; } - + + public static IQ createResult(JID to, JID from, String id) { + return createResult(to, from, id, null); + } + public static IQ createResult(JID to, JID from, String id, Payload payload) { IQ iq = new IQ(Type.Result); iq.setTo(to); iq.setFrom(from); iq.setID(id); - iq.addPayload(payload); + if(payload != null) { + iq.addPayload(payload); + } return iq; } + public static IQ createError(JID to, String id) { + return createError(to, id, ErrorPayload.Condition.BadRequest, ErrorPayload.Type.Cancel, null); + } + + public static IQ createError(JID to, String id, ErrorPayload.Condition condition) { + return createError(to, id, condition, ErrorPayload.Type.Cancel, null); + } + public static IQ createError(JID to, String id, ErrorPayload.Condition condition, ErrorPayload.Type type) { - IQ iq = new IQ(Type.Error); - iq.setTo(to); - iq.setID(id); - iq.addPayload(new ErrorPayload(condition, type)); - return iq; + return createError(to, id, condition, type, null); } public static IQ createError(JID to, String id, ErrorPayload.Condition condition, ErrorPayload.Type type, Payload payload) { @@ -74,6 +94,18 @@ public class IQ extends Stanza { return iq; } + public static IQ createError(JID to, JID from, String id) { + return createError(to, from, id, ErrorPayload.Condition.BadRequest, ErrorPayload.Type.Cancel, null); + } + + public static IQ createError(JID to, JID from, String id, ErrorPayload.Condition condition) { + return createError(to, from, id, condition, ErrorPayload.Type.Cancel, null); + } + + public static IQ createError(JID to, JID from, String id, ErrorPayload.Condition condition, ErrorPayload.Type type) { + return createError(to, from, id, condition, type, null); + } + public static IQ createError(JID to, JID from, String id, ErrorPayload.Condition condition, ErrorPayload.Type type, Payload payload) { IQ iq = new IQ(Type.Error); iq.setTo(to); |