Search in sources :

Example 1 with PhotoDeserializer

use of com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer in project Klyph by jonathangerbaud.

the class AlbumTaggedPhotosRequest method handleResult.

@Override
public ArrayList<GraphObject> handleResult(JSONArray result) {
    PhotoDeserializer deserializer = new PhotoDeserializer();
    ArrayList<GraphObject> photos = (ArrayList<GraphObject>) deserializer.deserializeArray(result);
    setHasMoreData(photos.size() >= 50);
    return photos;
}
Also used : ArrayList(java.util.ArrayList) PhotoDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer) GraphObject(com.abewy.android.apps.klyph.core.graph.GraphObject)

Example 2 with PhotoDeserializer

use of com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer in project Klyph by jonathangerbaud.

the class ElementAlbumRequest method handleResult.

@Override
public ArrayList<GraphObject> handleResult(JSONArray[] result) {
    JSONArray data = result[0];
    JSONArray photos = result[1];
    assocData(data, photos, "cover_pid", "pid", "cover_images", "images");
    int n = 25;
    Album taggedAlbum = null;
    Album videoAlbum = null;
    if (result.length == 6) {
        JSONArray tagged = result[2];
        JSONArray user = result[3];
        JSONArray profile = result[4];
        PhotoDeserializer pd = new PhotoDeserializer();
        List<GraphObject> taggedPhotos = pd.deserializeArray(tagged);
        int nt = taggedPhotos.size();
        if (nt > 0) {
            taggedAlbum = new Album();
            taggedAlbum.setOwner(id);
            taggedAlbum.setPhoto_count(nt);
            taggedAlbum.setVideo_count(0);
            taggedAlbum.setIsTaggedAlbum(true);
            taggedAlbum.setIs_video_album(false);
            String eName = "";
            if (user.length() > 0) {
                UserDeserializer ud = new UserDeserializer();
                User u = (User) ud.deserializeArray(user).get(0);
                eName = u.getFirst_name().length() > 0 ? u.getFirst_name() : u.getName();
            } else if (profile.length() > 0) {
                ProfileDeserializer prd = new ProfileDeserializer();
                Profile p = (Profile) prd.deserializeArray(profile).get(0);
                eName = p.getName();
            }
            taggedAlbum.setName(KlyphApplication.getInstance().getString(R.string.tagged_photos_of, eName));
            Photo photo = (Photo) taggedPhotos.get(0);
            taggedAlbum.setCover_pid(photo.getPid());
            taggedAlbum.setCover_images(photo.getImages());
        }
        JSONArray videos = result[5];
        if (videos.length() > 0) {
            videoAlbum = new Album();
            videoAlbum.setOwner(id);
            videoAlbum.setPhoto_count(nt);
            videoAlbum.setVideo_count(0);
            videoAlbum.setIsTaggedAlbum(false);
            videoAlbum.setIs_video_album(true);
            for (int i = 0; i < videos.length(); i++) {
                JSONObject v = videos.optJSONObject(i);
                if (v != null && v.optString("thumbnail_link") != null) {
                    Image cover = new Photo.Image();
                    cover.setSource(v.optString("thumbnail_link"));
                    List<Image> images = new ArrayList<Photo.Image>();
                    images.add(cover);
                    videoAlbum.setOwner(v.optString("owner"));
                    videoAlbum.setCover_images(images);
                    break;
                }
            }
        }
    }
    AlbumDeserializer deserializer = new AlbumDeserializer();
    ArrayList<GraphObject> albums = (ArrayList<GraphObject>) deserializer.deserializeArray(data);
    if (videoAlbum != null)
        albums.add(0, videoAlbum);
    if (taggedAlbum != null)
        albums.add(0, taggedAlbum);
    setHasMoreData(albums.size() >= n);
    return albums;
}
Also used : UserDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.UserDeserializer) User(com.abewy.android.apps.klyph.core.fql.User) JSONArray(org.json.JSONArray) ArrayList(java.util.ArrayList) Album(com.abewy.android.apps.klyph.core.fql.Album) PhotoDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer) Photo(com.abewy.android.apps.klyph.core.fql.Photo) GraphObject(com.abewy.android.apps.klyph.core.graph.GraphObject) Image(com.abewy.android.apps.klyph.core.fql.Photo.Image) Profile(com.abewy.android.apps.klyph.core.fql.Profile) JSONObject(org.json.JSONObject) AlbumDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.AlbumDeserializer) ProfileDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.ProfileDeserializer)

Example 3 with PhotoDeserializer

use of com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer in project Klyph by jonathangerbaud.

the class GroupPhotosRequest method handleResult.

@Override
public ArrayList<GraphObject> handleResult(JSONArray result) {
    PhotoDeserializer deserializer = new PhotoDeserializer();
    ArrayList<GraphObject> photos = (ArrayList<GraphObject>) deserializer.deserializeArray(result);
    setHasMoreData(photos.size() >= 50);
    return photos;
}
Also used : ArrayList(java.util.ArrayList) PhotoDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer) GraphObject(com.abewy.android.apps.klyph.core.graph.GraphObject)

Example 4 with PhotoDeserializer

use of com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer in project Klyph by jonathangerbaud.

the class PhotoListRequest method handleResult.

@Override
public ArrayList<GraphObject> handleResult(JSONArray result) {
    PhotoDeserializer deserializer = new PhotoDeserializer();
    ArrayList<GraphObject> photos = (ArrayList<GraphObject>) deserializer.deserializeArray(result);
    setHasMoreData(false);
    return photos;
}
Also used : ArrayList(java.util.ArrayList) PhotoDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer) GraphObject(com.abewy.android.apps.klyph.core.graph.GraphObject)

Example 5 with PhotoDeserializer

use of com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer in project Klyph by jonathangerbaud.

the class AllPhotosRequest method handleResult.

@Override
public ArrayList<GraphObject> handleResult(JSONArray result) {
    PhotoDeserializer deserializer = new PhotoDeserializer();
    ArrayList<GraphObject> photos = (ArrayList<GraphObject>) deserializer.deserializeArray(result);
    setHasMoreData(false);
    return photos;
}
Also used : ArrayList(java.util.ArrayList) PhotoDeserializer(com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer) GraphObject(com.abewy.android.apps.klyph.core.graph.GraphObject)

Aggregations

PhotoDeserializer (com.abewy.android.apps.klyph.core.fql.serializer.PhotoDeserializer)9 GraphObject (com.abewy.android.apps.klyph.core.graph.GraphObject)9 ArrayList (java.util.ArrayList)9 Photo (com.abewy.android.apps.klyph.core.fql.Photo)2 Image (com.abewy.android.apps.klyph.core.fql.Photo.Image)2 JSONArray (org.json.JSONArray)2 Album (com.abewy.android.apps.klyph.core.fql.Album)1 Profile (com.abewy.android.apps.klyph.core.fql.Profile)1 ProfilePic (com.abewy.android.apps.klyph.core.fql.ProfilePic)1 User (com.abewy.android.apps.klyph.core.fql.User)1 AlbumDeserializer (com.abewy.android.apps.klyph.core.fql.serializer.AlbumDeserializer)1 ProfileDeserializer (com.abewy.android.apps.klyph.core.fql.serializer.ProfileDeserializer)1 ProfilePicDeserializer (com.abewy.android.apps.klyph.core.fql.serializer.ProfilePicDeserializer)1 UserDeserializer (com.abewy.android.apps.klyph.core.fql.serializer.UserDeserializer)1 JSONObject (org.json.JSONObject)1