mirror of
https://github.com/vanitasvitae/Smack.git
synced 2025-09-09 09:09:38 +02:00
Rework Smack Provider design
this is the first stop towards fixing "SMACK-65: parsing should look for depth", by providing the initial parsing depth to the provider. Some methods (.e.g parseMessage) now use the depth as abort condition, instead of a unclean String equals check. parseIQ() and parseExtension() where both renamed to parse. This also restricts the Exceptions thrown by the parse method, to just XmlPullParserException, IOException and SmackException (not really a big victory, but nevertheless a slight improvement). StreamFeatureProvider is now gone, we simply use PacketExtensionProvider for stream features.
This commit is contained in:
parent
d04517cd08
commit
6980c8e63d
137 changed files with 1101 additions and 841 deletions
|
@ -16,13 +16,16 @@
|
|||
*/
|
||||
package org.jivesoftware.smackx.carbons.provider;
|
||||
|
||||
import org.jivesoftware.smack.packet.PacketExtension;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smack.provider.PacketExtensionProvider;
|
||||
import org.jivesoftware.smack.util.PacketParserUtils;
|
||||
import org.jivesoftware.smackx.carbons.packet.CarbonExtension;
|
||||
import org.jivesoftware.smackx.carbons.packet.CarbonExtension.Direction;
|
||||
import org.jivesoftware.smackx.forward.Forwarded;
|
||||
import org.jivesoftware.smackx.forward.provider.ForwardedProvider;
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
/**
|
||||
* This class implements the {@link PacketExtensionProvider} to parse
|
||||
|
@ -31,9 +34,13 @@ import org.xmlpull.v1.XmlPullParser;
|
|||
* @author Georg Lukas
|
||||
*
|
||||
*/
|
||||
public class CarbonManagerProvider implements PacketExtensionProvider {
|
||||
public class CarbonManagerProvider extends PacketExtensionProvider<CarbonExtension> {
|
||||
|
||||
public PacketExtension parseExtension(XmlPullParser parser) throws Exception {
|
||||
private static final ForwardedProvider FORWARDED_PROVIDER = new ForwardedProvider();
|
||||
|
||||
@Override
|
||||
public CarbonExtension parse(XmlPullParser parser, int initialDepth)
|
||||
throws SmackException, XmlPullParserException, IOException {
|
||||
Direction dir = Direction.valueOf(parser.getName());
|
||||
Forwarded fwd = null;
|
||||
|
||||
|
@ -41,13 +48,13 @@ public class CarbonManagerProvider implements PacketExtensionProvider {
|
|||
while (!done) {
|
||||
int eventType = parser.next();
|
||||
if (eventType == XmlPullParser.START_TAG && parser.getName().equals("forwarded")) {
|
||||
fwd = (Forwarded) PacketParserUtils.parsePacketExtension(Forwarded.ELEMENT, Forwarded.NAMESPACE, parser);
|
||||
fwd = FORWARDED_PROVIDER.parse(parser);
|
||||
}
|
||||
else if (eventType == XmlPullParser.END_TAG && dir == Direction.valueOf(parser.getName()))
|
||||
done = true;
|
||||
}
|
||||
if (fwd == null)
|
||||
throw new Exception("sent/received must contain exactly one <forwarded> tag");
|
||||
throw new SmackException("sent/received must contain exactly one <forwarded> tag");
|
||||
return new CarbonExtension(dir, fwd);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,16 +19,15 @@ package org.jivesoftware.smackx.csi.provider;
|
|||
import java.io.IOException;
|
||||
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smack.packet.PacketExtension;
|
||||
import org.jivesoftware.smack.provider.StreamFeatureProvider;
|
||||
import org.jivesoftware.smack.provider.PacketExtensionProvider;
|
||||
import org.jivesoftware.smackx.csi.packet.ClientStateIndication;
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
public class ClientStateIndicationFeatureProvider implements StreamFeatureProvider {
|
||||
public class ClientStateIndicationFeatureProvider extends PacketExtensionProvider<ClientStateIndication.Feature> {
|
||||
|
||||
@Override
|
||||
public PacketExtension parseStreamFeature(XmlPullParser parser)
|
||||
public ClientStateIndication.Feature parse(XmlPullParser parser, int initialDepth)
|
||||
throws XmlPullParserException, IOException, SmackException {
|
||||
return ClientStateIndication.Feature.INSTANCE;
|
||||
}
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
*/
|
||||
package org.jivesoftware.smackx.hoxt.provider;
|
||||
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smack.provider.IQProvider;
|
||||
import org.jivesoftware.smack.util.StringUtils;
|
||||
import org.jivesoftware.smackx.hoxt.packet.AbstractHttpOverXmpp;
|
||||
|
@ -23,7 +24,9 @@ import org.jivesoftware.smackx.shim.packet.Header;
|
|||
import org.jivesoftware.smackx.shim.packet.HeadersExtension;
|
||||
import org.jivesoftware.smackx.shim.provider.HeaderProvider;
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
|
@ -33,7 +36,7 @@ import java.util.Set;
|
|||
* @author Andriy Tsykholyas
|
||||
* @see <a href="http://xmpp.org/extensions/xep-0332.html">XEP-0332: HTTP over XMPP transport</a>
|
||||
*/
|
||||
public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
||||
public abstract class AbstractHttpOverXmppProvider<H extends AbstractHttpOverXmpp> extends IQProvider<H> {
|
||||
|
||||
private static final String ELEMENT_HEADERS = "headers";
|
||||
private static final String ELEMENT_HEADER = "header";
|
||||
|
@ -56,9 +59,11 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
* @param parser parser
|
||||
* @param elementName name of concrete implementation of this element
|
||||
* @param body parent Body element
|
||||
* @throws Exception if anything goes wrong
|
||||
* @throws IOException
|
||||
* @throws XmlPullParserException
|
||||
* @throws SmackException
|
||||
*/
|
||||
protected void parseHeadersAndData(XmlPullParser parser, String elementName, AbstractHttpOverXmpp.AbstractBody body) throws Exception {
|
||||
protected void parseHeadersAndData(XmlPullParser parser, String elementName, AbstractHttpOverXmpp.AbstractBody body) throws XmlPullParserException, IOException, SmackException {
|
||||
boolean done = false;
|
||||
|
||||
while (!done) {
|
||||
|
@ -82,7 +87,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
}
|
||||
}
|
||||
|
||||
private HeadersExtension parseHeaders(XmlPullParser parser) throws Exception {
|
||||
private HeadersExtension parseHeaders(XmlPullParser parser) throws XmlPullParserException, IOException, SmackException {
|
||||
HeaderProvider provider = new HeaderProvider();
|
||||
Set<Header> set = new HashSet<Header>();
|
||||
boolean done = false;
|
||||
|
@ -92,7 +97,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
|
||||
if (eventType == XmlPullParser.START_TAG) {
|
||||
if (parser.getName().equals(ELEMENT_HEADER)) {
|
||||
Header header = (Header) provider.parseExtension(parser);
|
||||
Header header = provider.parse(parser);
|
||||
set.add(header);
|
||||
}
|
||||
} else if (eventType == XmlPullParser.END_TAG) {
|
||||
|
@ -104,7 +109,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
return new HeadersExtension(set);
|
||||
}
|
||||
|
||||
private AbstractHttpOverXmpp.Data parseData(XmlPullParser parser) throws Exception {
|
||||
private AbstractHttpOverXmpp.Data parseData(XmlPullParser parser) throws XmlPullParserException, IOException {
|
||||
AbstractHttpOverXmpp.DataChild child = null;
|
||||
boolean done = false;
|
||||
|
||||
|
@ -143,7 +148,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
return data;
|
||||
}
|
||||
|
||||
private AbstractHttpOverXmpp.Text parseText(XmlPullParser parser) throws Exception {
|
||||
private AbstractHttpOverXmpp.Text parseText(XmlPullParser parser) throws XmlPullParserException, IOException {
|
||||
String text = null;
|
||||
boolean done = false;
|
||||
|
||||
|
@ -166,7 +171,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
return new AbstractHttpOverXmpp.Text(text);
|
||||
}
|
||||
|
||||
private AbstractHttpOverXmpp.Xml parseXml(XmlPullParser parser) throws Exception {
|
||||
private AbstractHttpOverXmpp.Xml parseXml(XmlPullParser parser) throws XmlPullParserException, IOException {
|
||||
StringBuilder builder = new StringBuilder();
|
||||
boolean done = false;
|
||||
boolean startClosed = true;
|
||||
|
@ -214,7 +219,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
return new AbstractHttpOverXmpp.Xml(builder.toString());
|
||||
}
|
||||
|
||||
private void appendXmlAttributes(XmlPullParser parser, StringBuilder builder) throws Exception {
|
||||
private void appendXmlAttributes(XmlPullParser parser, StringBuilder builder) {
|
||||
// NOTE: for now we ignore namespaces
|
||||
int count = parser.getAttributeCount();
|
||||
|
||||
|
@ -230,7 +235,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
}
|
||||
}
|
||||
|
||||
private AbstractHttpOverXmpp.Base64 parseBase64(XmlPullParser parser) throws Exception {
|
||||
private AbstractHttpOverXmpp.Base64 parseBase64(XmlPullParser parser) throws XmlPullParserException, IOException {
|
||||
String text = null;
|
||||
boolean done = false;
|
||||
|
||||
|
@ -254,7 +259,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
return new AbstractHttpOverXmpp.Base64(text);
|
||||
}
|
||||
|
||||
private AbstractHttpOverXmpp.ChunkedBase64 parseChunkedBase64(XmlPullParser parser) throws Exception {
|
||||
private AbstractHttpOverXmpp.ChunkedBase64 parseChunkedBase64(XmlPullParser parser) throws XmlPullParserException, IOException {
|
||||
String streamId = parser.getAttributeValue("", ATTRIBUTE_STREAM_ID);
|
||||
AbstractHttpOverXmpp.ChunkedBase64 child = new AbstractHttpOverXmpp.ChunkedBase64(streamId);
|
||||
boolean done = false;
|
||||
|
@ -275,7 +280,7 @@ public abstract class AbstractHttpOverXmppProvider implements IQProvider {
|
|||
return child;
|
||||
}
|
||||
|
||||
private AbstractHttpOverXmpp.Ibb parseIbb(XmlPullParser parser) throws Exception {
|
||||
private AbstractHttpOverXmpp.Ibb parseIbb(XmlPullParser parser) throws XmlPullParserException, IOException {
|
||||
String sid = parser.getAttributeValue("", ATTRIBUTE_SID);
|
||||
AbstractHttpOverXmpp.Ibb child = new AbstractHttpOverXmpp.Ibb(sid);
|
||||
boolean done = false;
|
||||
|
|
|
@ -16,10 +16,12 @@
|
|||
*/
|
||||
package org.jivesoftware.smackx.hoxt.provider;
|
||||
|
||||
import org.jivesoftware.smack.packet.PacketExtension;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.jivesoftware.smack.provider.PacketExtensionProvider;
|
||||
import org.jivesoftware.smackx.hoxt.packet.Base64BinaryChunk;
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
/**
|
||||
* Packet provider for base64 binary chunks.
|
||||
|
@ -27,16 +29,10 @@ import org.xmlpull.v1.XmlPullParser;
|
|||
* @author Andriy Tsykholyas
|
||||
* @see <a href="http://xmpp.org/extensions/xep-0332.html">XEP-0332: HTTP over XMPP transport</a>
|
||||
*/
|
||||
public class Base64BinaryChunkProvider implements PacketExtensionProvider {
|
||||
|
||||
/**
|
||||
* Required no-argument constructor.
|
||||
*/
|
||||
public Base64BinaryChunkProvider() {
|
||||
}
|
||||
public class Base64BinaryChunkProvider extends PacketExtensionProvider<Base64BinaryChunk> {
|
||||
|
||||
@Override
|
||||
public PacketExtension parseExtension(XmlPullParser parser) throws Exception {
|
||||
public Base64BinaryChunk parse(XmlPullParser parser, int initialDepth) throws XmlPullParserException, IOException {
|
||||
String streamId = parser.getAttributeValue("", Base64BinaryChunk.ATTRIBUTE_STREAM_ID);
|
||||
String nrString = parser.getAttributeValue("", Base64BinaryChunk.ATTRIBUTE_NR);
|
||||
String lastString = parser.getAttributeValue("", Base64BinaryChunk.ATTRIBUTE_LAST);
|
||||
|
|
|
@ -16,10 +16,13 @@
|
|||
*/
|
||||
package org.jivesoftware.smackx.hoxt.provider;
|
||||
|
||||
import org.jivesoftware.smack.packet.IQ;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smackx.hoxt.packet.HttpMethod;
|
||||
import org.jivesoftware.smackx.hoxt.packet.HttpOverXmppReq;
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
/**
|
||||
* Req packet provider.
|
||||
|
@ -27,7 +30,7 @@ import org.xmlpull.v1.XmlPullParser;
|
|||
* @author Andriy Tsykholyas
|
||||
* @see <a href="http://xmpp.org/extensions/xep-0332.html">XEP-0332: HTTP over XMPP transport</a>
|
||||
*/
|
||||
public class HttpOverXmppReqProvider extends AbstractHttpOverXmppProvider {
|
||||
public class HttpOverXmppReqProvider extends AbstractHttpOverXmppProvider<HttpOverXmppReq> {
|
||||
|
||||
private static final String ELEMENT_REQ = "req";
|
||||
|
||||
|
@ -42,7 +45,8 @@ public class HttpOverXmppReqProvider extends AbstractHttpOverXmppProvider {
|
|||
}
|
||||
|
||||
@Override
|
||||
public IQ parseIQ(XmlPullParser parser) throws Exception {
|
||||
public HttpOverXmppReq parse(XmlPullParser parser, int initialDepth)
|
||||
throws XmlPullParserException, IOException, SmackException {
|
||||
String method = parser.getAttributeValue("", ATTRIBUTE_METHOD);
|
||||
String resource = parser.getAttributeValue("", ATTRIBUTE_RESOURCE);
|
||||
String version = parser.getAttributeValue("", ATTRIBUTE_VERSION);
|
||||
|
|
|
@ -16,9 +16,12 @@
|
|||
*/
|
||||
package org.jivesoftware.smackx.hoxt.provider;
|
||||
|
||||
import org.jivesoftware.smack.packet.IQ;
|
||||
import java.io.IOException;
|
||||
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smackx.hoxt.packet.HttpOverXmppResp;
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
/**
|
||||
* Resp packet provider.
|
||||
|
@ -26,21 +29,16 @@ import org.xmlpull.v1.XmlPullParser;
|
|||
* @author Andriy Tsykholyas
|
||||
* @see <a href="http://xmpp.org/extensions/xep-0332.html">XEP-0332: HTTP over XMPP transport</a>
|
||||
*/
|
||||
public class HttpOverXmppRespProvider extends AbstractHttpOverXmppProvider {
|
||||
public class HttpOverXmppRespProvider extends AbstractHttpOverXmppProvider<HttpOverXmppResp> {
|
||||
|
||||
private static final String ELEMENT_RESP = "resp";
|
||||
|
||||
private static final String ATTRIBUTE_STATUS_MESSAGE = "statusMessage";
|
||||
private static final String ATTRIBUTE_STATUS_CODE = "statusCode";
|
||||
|
||||
/**
|
||||
* Mandatory no argument constructor.
|
||||
*/
|
||||
public HttpOverXmppRespProvider() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public IQ parseIQ(XmlPullParser parser) throws Exception {
|
||||
public HttpOverXmppResp parse(XmlPullParser parser, int initialDepth)
|
||||
throws XmlPullParserException, IOException, SmackException {
|
||||
String version = parser.getAttributeValue("", ATTRIBUTE_VERSION);
|
||||
String statusMessage = parser.getAttributeValue("", ATTRIBUTE_STATUS_MESSAGE);
|
||||
String statusCodeString = parser.getAttributeValue("", ATTRIBUTE_STATUS_CODE);
|
||||
|
|
|
@ -52,7 +52,7 @@ public class CarbonTest extends ExperimentalInitializerTest {
|
|||
.asString(outputProperties);
|
||||
|
||||
parser = PacketParserUtils.getParserFor(control);
|
||||
cc = (CarbonExtension) new CarbonManagerProvider().parseExtension(parser);
|
||||
cc = (CarbonExtension) new CarbonManagerProvider().parse(parser);
|
||||
fwd = cc.getForwarded();
|
||||
|
||||
// meta
|
||||
|
@ -83,7 +83,7 @@ public class CarbonTest extends ExperimentalInitializerTest {
|
|||
.asString(outputProperties);
|
||||
|
||||
parser = PacketParserUtils.getParserFor(control);
|
||||
cc = (CarbonExtension) new CarbonManagerProvider().parseExtension(parser);
|
||||
cc = (CarbonExtension) new CarbonManagerProvider().parse(parser);
|
||||
|
||||
assertEquals(CarbonExtension.Direction.received, cc.getDirection());
|
||||
|
||||
|
@ -102,6 +102,6 @@ public class CarbonTest extends ExperimentalInitializerTest {
|
|||
.asString(outputProperties);
|
||||
|
||||
parser = PacketParserUtils.getParserFor(control);
|
||||
new CarbonManagerProvider().parseExtension(parser);
|
||||
new CarbonManagerProvider().parse(parser);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,10 +52,10 @@ public class AbstractHttpOverXmppProviderTest {
|
|||
expectedHeaders.put("Allow", "OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE");
|
||||
expectedHeaders.put("Content-Length", "0");
|
||||
|
||||
AbstractHttpOverXmppProvider provider = new HttpOverXmppRespProvider();
|
||||
HttpOverXmppRespProvider provider = new HttpOverXmppRespProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string);
|
||||
|
||||
IQ iq = provider.parseIQ(parser);
|
||||
IQ iq = provider.parse(parser);
|
||||
assertTrue(iq instanceof HttpOverXmppResp);
|
||||
AbstractHttpOverXmpp.AbstractBody body = ((HttpOverXmppResp) iq).getResp();
|
||||
|
||||
|
@ -72,10 +72,10 @@ public class AbstractHttpOverXmppProviderTest {
|
|||
Map<String, String> expectedHeaders = new HashMap<String, String>();
|
||||
expectedHeaders.put("Host", "clayster.com");
|
||||
|
||||
AbstractHttpOverXmppProvider provider = new HttpOverXmppReqProvider();
|
||||
HttpOverXmppReqProvider provider = new HttpOverXmppReqProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string);
|
||||
|
||||
IQ iq = provider.parseIQ(parser);
|
||||
IQ iq = provider.parse(parser);
|
||||
assertTrue(iq instanceof HttpOverXmppReq);
|
||||
AbstractHttpOverXmpp.AbstractBody body = ((HttpOverXmppReq) iq).getReq();
|
||||
|
||||
|
@ -181,10 +181,10 @@ public class AbstractHttpOverXmppProviderTest {
|
|||
}
|
||||
|
||||
private AbstractHttpOverXmpp.AbstractBody parseAbstractBody(String string, String tag) throws Exception {
|
||||
AbstractHttpOverXmppProvider provider = new HttpOverXmppRespProvider();
|
||||
HttpOverXmppRespProvider provider = new HttpOverXmppRespProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string, tag);
|
||||
|
||||
IQ iq = provider.parseIQ(parser);
|
||||
IQ iq = provider.parse(parser);
|
||||
assertTrue(iq instanceof HttpOverXmppResp);
|
||||
AbstractHttpOverXmpp.AbstractBody body = ((HttpOverXmppResp) iq).getResp();
|
||||
return body;
|
||||
|
|
|
@ -39,7 +39,7 @@ public class Base64BinaryChunkProviderTest {
|
|||
Base64BinaryChunkProvider provider = new Base64BinaryChunkProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string);
|
||||
|
||||
PacketExtension extension = provider.parseExtension(parser);
|
||||
PacketExtension extension = provider.parse(parser);
|
||||
assertTrue(extension instanceof Base64BinaryChunk);
|
||||
|
||||
Base64BinaryChunk chunk = (Base64BinaryChunk) extension;
|
||||
|
@ -57,7 +57,7 @@ public class Base64BinaryChunkProviderTest {
|
|||
Base64BinaryChunkProvider provider = new Base64BinaryChunkProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string);
|
||||
|
||||
PacketExtension extension = provider.parseExtension(parser);
|
||||
PacketExtension extension = provider.parse(parser);
|
||||
assertTrue(extension instanceof Base64BinaryChunk);
|
||||
|
||||
Base64BinaryChunk chunk = (Base64BinaryChunk) extension;
|
||||
|
|
|
@ -68,7 +68,7 @@ public class HttpOverXmppReqProviderTest {
|
|||
private HttpOverXmppReq.Req parseReq(String string) throws Exception {
|
||||
HttpOverXmppReqProvider provider = new HttpOverXmppReqProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string);
|
||||
IQ iq = provider.parseIQ(parser);
|
||||
IQ iq = provider.parse(parser);
|
||||
assertTrue(iq instanceof HttpOverXmppReq);
|
||||
HttpOverXmppReq castedIq = (HttpOverXmppReq) iq;
|
||||
return castedIq.getReq();
|
||||
|
|
|
@ -37,7 +37,7 @@ public class HttpOverXmppRespProviderTest {
|
|||
HttpOverXmppRespProvider provider = new HttpOverXmppRespProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string);
|
||||
|
||||
IQ iq = provider.parseIQ(parser);
|
||||
IQ iq = provider.parse(parser);
|
||||
assertTrue(iq instanceof HttpOverXmppResp);
|
||||
HttpOverXmppResp castedIq = (HttpOverXmppResp) iq;
|
||||
HttpOverXmppResp.Resp resp = castedIq.getResp();
|
||||
|
@ -53,7 +53,7 @@ public class HttpOverXmppRespProviderTest {
|
|||
HttpOverXmppRespProvider provider = new HttpOverXmppRespProvider();
|
||||
XmlPullParser parser = PacketParserUtils.getParserFor(string);
|
||||
|
||||
IQ iq = provider.parseIQ(parser);
|
||||
IQ iq = provider.parse(parser);
|
||||
assertTrue(iq instanceof HttpOverXmppResp);
|
||||
HttpOverXmppResp castedIq = (HttpOverXmppResp) iq;
|
||||
HttpOverXmppResp.Resp resp = castedIq.getResp();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue