Java Code Examples for com.facebook.model.GraphObjectList#size()

The following examples show how to use com.facebook.model.GraphObjectList#size() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: GraphObjectPagingLoader.java    From platform-friends-android with BSD 2-Clause "Simplified" License 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 2
Source File: GraphObjectPagingLoader.java    From Klyph with MIT License 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 3
Source File: GraphObjectPagingLoader.java    From barterli_android with Apache License 2.0 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 4
Source File: GraphObjectPagingLoader.java    From android-skeleton-project with MIT License 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 5
Source File: GraphObjectPagingLoader.java    From FacebookImageShareIntent with MIT License 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 6
Source File: GraphObjectPagingLoader.java    From aws-mobile-self-paced-labs-samples with Apache License 2.0 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 7
Source File: GraphObjectPagingLoader.java    From Abelana-Android with Apache License 2.0 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        if (nextRequest != null) {
            cursorToModify.setMoreObjectsAvailable(true);
        } else {
            cursorToModify.setMoreObjectsAvailable(false);
        }
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 8
Source File: GraphObjectPagingLoader.java    From KlyphMessenger with MIT License 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 9
Source File: GraphObjectPagingLoader.java    From facebook-api-android-maven with Apache License 2.0 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        if (nextRequest != null) {
            cursorToModify.setMoreObjectsAvailable(true);
        } else {
            cursorToModify.setMoreObjectsAvailable(false);
        }
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 10
Source File: GraphObjectPagingLoader.java    From HypFacebook with BSD 2-Clause "Simplified" License 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 11
Source File: GraphObjectPagingLoader.java    From FacebookNewsfeedSample-Android with Apache License 2.0 5 votes vote down vote up
private void addResults(Response response) {
    SimpleGraphObjectCursor<T> cursorToModify = (cursor == null || !appendResults) ? new SimpleGraphObjectCursor<T>() :
            new SimpleGraphObjectCursor<T>(cursor);

    PagedResults result = response.getGraphObjectAs(PagedResults.class);
    boolean fromCache = response.getIsFromCache();

    GraphObjectList<T> data = result.getData().castToListOf(graphObjectClass);
    boolean haveData = data.size() > 0;

    if (haveData) {
        nextRequest = response.getRequestForPagedResults(Response.PagingDirection.NEXT);

        cursorToModify.addGraphObjects(data, fromCache);
        cursorToModify.setMoreObjectsAvailable(true);
    }

    if (!haveData) {
        cursorToModify.setMoreObjectsAvailable(false);
        cursorToModify.setFromCache(fromCache);

        nextRequest = null;
    }

    // Once we get any set of results NOT from the cache, stop trying to get any future ones
    // from it.
    if (!fromCache) {
        skipRoundtripIfCached = false;
    }

    deliverResult(cursorToModify);
}
 
Example 12
Source File: Session.java    From android-skeleton-project with MIT License 4 votes vote down vote up
/**
 * This parses a server response to a call to me/permissions.  It will return the list of granted permissions.
 * It will optionally update a session with the requested permissions.  It also handles the distinction between
 * 1.0 and 2.0 calls to the endpoint.
 *
 * @param session An optional session to update the requested permission set
 * @param response The server response
 * @return A list of granted permissions or null if an error
 */
static List<String> handlePermissionResponse(Session session, Response response) {
    if (response.getError() != null) {
        return null;
    }

    GraphMultiResult result = response.getGraphObjectAs(GraphMultiResult.class);
    if (result == null) {
        return null;
    }

    GraphObjectList<GraphObject> data = result.getData();
    if (data == null || data.size() == 0) {
        return null;
    }
    List<String> allPermissions = new ArrayList<String>(data.size());
    List<String> grantedPermissions = new ArrayList<String>(data.size());

    // Check if we are dealing with v2.0 or v1.0 behavior until the server is updated
    GraphObject firstObject = data.get(0);
    if (firstObject.getProperty("permission") != null) { // v2.0
        for (GraphObject graphObject : data) {
            String permission = (String) graphObject.getProperty("permission");
            String status = (String) graphObject.getProperty("status");
            allPermissions.add(permission);
            if(status.equals("granted")) {
                grantedPermissions.add(permission);
            }
        }
    } else { // v1.0
        Map<String, Object> permissionsMap = firstObject.asMap();
        for (Map.Entry<String, Object> entry : permissionsMap.entrySet()) {
            if (entry.getKey().equals("installed")) {
                continue;
            }
            allPermissions.add(entry.getKey());
            if ((Integer)entry.getValue() == 1) {
                grantedPermissions.add(entry.getKey());
            }
        }
    }

    // If we have a session track all the permissions that were requested
    if (session != null) {
        session.addRequestedPermissions(allPermissions);
    }
    return grantedPermissions;
}
 
Example 13
Source File: Session.java    From FacebookImageShareIntent with MIT License 4 votes vote down vote up
/**
 * This parses a server response to a call to me/permissions.  It will return the list of granted permissions.
 * It will optionally update a session with the requested permissions.  It also handles the distinction between
 * 1.0 and 2.0 calls to the endpoint.
 *
 * @param session An optional session to update the requested permission set
 * @param response The server response
 * @return A list of granted permissions or null if an error
 */
static List<String> handlePermissionResponse(Session session, Response response) {
    if (response.getError() != null) {
        return null;
    }

    GraphMultiResult result = response.getGraphObjectAs(GraphMultiResult.class);
    if (result == null) {
        return null;
    }

    GraphObjectList<GraphObject> data = result.getData();
    if (data == null || data.size() == 0) {
        return null;
    }
    List<String> allPermissions = new ArrayList<String>(data.size());
    List<String> grantedPermissions = new ArrayList<String>(data.size());

    // Check if we are dealing with v2.0 or v1.0 behavior until the server is updated
    GraphObject firstObject = data.get(0);
    if (firstObject.getProperty("permission") != null) { // v2.0
        for (GraphObject graphObject : data) {
            String permission = (String) graphObject.getProperty("permission");
            String status = (String) graphObject.getProperty("status");
            allPermissions.add(permission);
            if(status.equals("granted")) {
                grantedPermissions.add(permission);
            }
        }
    } else { // v1.0
        Map<String, Object> permissionsMap = firstObject.asMap();
        for (Map.Entry<String, Object> entry : permissionsMap.entrySet()) {
            if (entry.getKey().equals("installed")) {
                continue;
            }
            allPermissions.add(entry.getKey());
            if ((Integer)entry.getValue() == 1) {
                grantedPermissions.add(entry.getKey());
            }
        }
    }

    // If we have a session track all the permissions that were requested
    if (session != null) {
        session.addRequestedPermissions(allPermissions);
    }
    return grantedPermissions;
}
 
Example 14
Source File: Session.java    From Abelana-Android with Apache License 2.0 4 votes vote down vote up
/**
 * This parses a server response to a call to me/permissions.  It will return the list of granted permissions.
 * It will optionally update a session with the requested permissions.  It also handles the distinction between
 * 1.0 and 2.0 calls to the endpoint.
 *
 * @param response The server response
 * @return A list of granted permissions or null if an error
 */
static PermissionsPair handlePermissionResponse(Response response) {
    if (response.getError() != null) {
        return null;
    }

    GraphMultiResult result = response.getGraphObjectAs(GraphMultiResult.class);
    if (result == null) {
        return null;
    }

    GraphObjectList<GraphObject> data = result.getData();
    if (data == null || data.size() == 0) {
        return null;
    }
    List<String> grantedPermissions = new ArrayList<String>(data.size());
    List<String> declinedPermissions = new ArrayList<String>(data.size());

    // Check if we are dealing with v2.0 or v1.0 behavior until the server is updated
    GraphObject firstObject = data.get(0);
    if (firstObject.getProperty("permission") != null) { // v2.0
        for (GraphObject graphObject : data) {
            String permission = (String) graphObject.getProperty("permission");
            if (permission.equals("installed")) {
                continue;
            }
            String status = (String) graphObject.getProperty("status");
            if(status.equals("granted")) {
                grantedPermissions.add(permission);
            } else if (status.equals("declined")) {
                declinedPermissions.add(permission);
            }
        }
    } else { // v1.0
        Map<String, Object> permissionsMap = firstObject.asMap();
        for (Map.Entry<String, Object> entry : permissionsMap.entrySet()) {
            if (entry.getKey().equals("installed")) {
                continue;
            }
            if ((Integer)entry.getValue() == 1) {
                grantedPermissions.add(entry.getKey());
            }
        }
    }

    return new PermissionsPair(grantedPermissions, declinedPermissions);
}
 
Example 15
Source File: Session.java    From facebook-api-android-maven with Apache License 2.0 4 votes vote down vote up
/**
 * This parses a server response to a call to me/permissions.  It will return the list of granted permissions.
 * It will optionally update a session with the requested permissions.  It also handles the distinction between
 * 1.0 and 2.0 calls to the endpoint.
 *
 * @param response The server response
 * @return A list of granted permissions or null if an error
 */
static PermissionsPair handlePermissionResponse(Response response) {
    if (response.getError() != null) {
        return null;
    }

    GraphMultiResult result = response.getGraphObjectAs(GraphMultiResult.class);
    if (result == null) {
        return null;
    }

    GraphObjectList<GraphObject> data = result.getData();
    if (data == null || data.size() == 0) {
        return null;
    }
    List<String> grantedPermissions = new ArrayList<String>(data.size());
    List<String> declinedPermissions = new ArrayList<String>(data.size());

    // Check if we are dealing with v2.0 or v1.0 behavior until the server is updated
    GraphObject firstObject = data.get(0);
    if (firstObject.getProperty("permission") != null) { // v2.0
        for (GraphObject graphObject : data) {
            String permission = (String) graphObject.getProperty("permission");
            if (permission.equals("installed")) {
                continue;
            }
            String status = (String) graphObject.getProperty("status");
            if(status.equals("granted")) {
                grantedPermissions.add(permission);
            } else if (status.equals("declined")) {
                declinedPermissions.add(permission);
            }
        }
    } else { // v1.0
        Map<String, Object> permissionsMap = firstObject.asMap();
        for (Map.Entry<String, Object> entry : permissionsMap.entrySet()) {
            if (entry.getKey().equals("installed")) {
                continue;
            }
            if ((Integer)entry.getValue() == 1) {
                grantedPermissions.add(entry.getKey());
            }
        }
    }

    return new PermissionsPair(grantedPermissions, declinedPermissions);
}