Search in sources :

Example 1 with XmlDom

use of com.androidquery.util.XmlDom in project androidquery by androidquery.

the class AbstractAjaxCallback method transform.

@SuppressWarnings("unchecked")
protected T transform(String url, byte[] data, AjaxStatus status) {
    if (type == null) {
        return null;
    }
    File file = status.getFile();
    if (data != null) {
        if (type.equals(Bitmap.class)) {
            return (T) BitmapFactory.decodeByteArray(data, 0, data.length);
        }
        if (type.equals(JSONObject.class)) {
            JSONObject result = null;
            String str = null;
            try {
                str = new String(data, encoding);
                result = (JSONObject) new JSONTokener(str).nextValue();
            } catch (Exception e) {
                AQUtility.debug(e);
                AQUtility.debug(str);
            }
            return (T) result;
        }
        if (type.equals(JSONArray.class)) {
            JSONArray result = null;
            try {
                String str = new String(data, encoding);
                result = (JSONArray) new JSONTokener(str).nextValue();
            } catch (Exception e) {
                AQUtility.debug(e);
            }
            return (T) result;
        }
        if (type.equals(String.class)) {
            String result = null;
            if (status.getSource() == AjaxStatus.NETWORK) {
                AQUtility.debug("network");
                result = correctEncoding(data, encoding, status);
            } else {
                AQUtility.debug("file");
                try {
                    result = new String(data, encoding);
                } catch (Exception e) {
                    AQUtility.debug(e);
                }
            }
            return (T) result;
        }
        if (type.equals(byte[].class)) {
            return (T) data;
        }
        if (transformer != null) {
            return transformer.transform(url, type, encoding, data, status);
        }
        if (st != null) {
            return st.transform(url, type, encoding, data, status);
        }
    } else if (file != null) {
        if (type.equals(File.class)) {
            return (T) file;
        }
        if (type.equals(XmlDom.class)) {
            XmlDom result = null;
            try {
                FileInputStream fis = new FileInputStream(file);
                result = new XmlDom(fis);
                status.closeLater(fis);
            } catch (Exception e) {
                AQUtility.report(e);
                return null;
            }
            return (T) result;
        }
        if (type.equals(XmlPullParser.class)) {
            XmlPullParser parser = Xml.newPullParser();
            try {
                FileInputStream fis = new FileInputStream(file);
                parser.setInput(fis, encoding);
                status.closeLater(fis);
            } catch (Exception e) {
                AQUtility.report(e);
                return null;
            }
            return (T) parser;
        }
        if (type.equals(InputStream.class)) {
            try {
                FileInputStream fis = new FileInputStream(file);
                status.closeLater(fis);
                return (T) fis;
            } catch (Exception e) {
                AQUtility.report(e);
                return null;
            }
        }
    }
    return null;
}
Also used : JSONTokener(org.json.JSONTokener) JSONObject(org.json.JSONObject) GZIPInputStream(java.util.zip.GZIPInputStream) ByteArrayInputStream(java.io.ByteArrayInputStream) FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) XmlDom(com.androidquery.util.XmlDom) JSONArray(org.json.JSONArray) XmlPullParser(org.xmlpull.v1.XmlPullParser) File(java.io.File) HttpHostConnectException(org.apache.http.conn.HttpHostConnectException) ClientProtocolException(org.apache.http.client.ClientProtocolException) IOException(java.io.IOException) FileInputStream(java.io.FileInputStream)

Example 2 with XmlDom

use of com.androidquery.util.XmlDom in project androidquery by androidquery.

the class ImageLoadingListOptionsActivity method convertAll.

private List<Photo> convertAll(XmlDom xml) {
    List<XmlDom> entries = xml.children("entry");
    List<Photo> result = new ArrayList<Photo>();
    for (XmlDom entry : entries) {
        result.add(convert(entry));
    }
    return result;
}
Also used : XmlDom(com.androidquery.util.XmlDom) ArrayList(java.util.ArrayList)

Example 3 with XmlDom

use of com.androidquery.util.XmlDom in project androidquery by androidquery.

the class AQueryXmlTest method testToString.

public void testToString() throws SAXException {
    InputStream is = this.getActivity().getResources().openRawResource(R.raw.colors);
    xml = new XmlDom(is);
    assertTrue(xml.toString().length() > 300);
}
Also used : InputStream(java.io.InputStream) XmlDom(com.androidquery.util.XmlDom)

Example 4 with XmlDom

use of com.androidquery.util.XmlDom in project androidquery by androidquery.

the class AQueryXmlTest method setUp.

protected void setUp() throws Exception {
    super.setUp();
    InputStream is = this.getActivity().getResources().openRawResource(R.raw.xml_test);
    xml = new XmlDom(is);
}
Also used : InputStream(java.io.InputStream) XmlDom(com.androidquery.util.XmlDom)

Example 5 with XmlDom

use of com.androidquery.util.XmlDom in project androidquery by androidquery.

the class AQueryXmlTest method testTags2.

public void testTags2() {
    XmlDom entry = xml.tag("entry");
    assertEquals(5, entry.tags("link", null, null).size());
    assertEquals(5, entry.tags("link", "rel", null).size());
    assertEquals(1, entry.tags("link", "rel", "self").size());
}
Also used : XmlDom(com.androidquery.util.XmlDom)

Aggregations

XmlDom (com.androidquery.util.XmlDom)20 ArrayList (java.util.ArrayList)8 Photo (com.androidquery.test.image.ImageLoadingList4Activity.Photo)6 InputStream (java.io.InputStream)6 AjaxCallback (com.androidquery.callback.AjaxCallback)2 JSONObject (org.json.JSONObject)2 GoogleHandle (com.androidquery.auth.GoogleHandle)1 AbstractAjaxCallback (com.androidquery.callback.AbstractAjaxCallback)1 AjaxStatus (com.androidquery.callback.AjaxStatus)1 BitmapAjaxCallback (com.androidquery.callback.BitmapAjaxCallback)1 ByteArrayInputStream (java.io.ByteArrayInputStream)1 File (java.io.File)1 FileInputStream (java.io.FileInputStream)1 IOException (java.io.IOException)1 GZIPInputStream (java.util.zip.GZIPInputStream)1 ClientProtocolException (org.apache.http.client.ClientProtocolException)1 HttpHostConnectException (org.apache.http.conn.HttpHostConnectException)1 JSONArray (org.json.JSONArray)1 JSONTokener (org.json.JSONTokener)1 XmlPullParser (org.xmlpull.v1.XmlPullParser)1