// @Override public Query<T> newOrQuery(Query<T>... queries) { // new ParseQuery(RegionUser.class.getSimpleName()) // .whereEqualTo("name", name) // .whereEqualTo("user", ParseUser.getCurrentUser()) // . ArrayList<ParseQuery> list = new ArrayList<ParseQuery>(); for (Query<T> q : queries) { list.add(q.pq); } Query<T> query = wrap(ParseQuery.or((List) list)); return query; }
private void getAllAlbums() { ParseQuery<Album> queryAuthor = ParseQuery.getQuery("Album"); queryAuthor.whereEqualTo("author", ParseUser.getCurrentUser()); ParseQuery<Album> queryCollaborator = ParseQuery.getQuery("Album"); queryCollaborator.whereEqualTo("collaborators", ParseUser.getCurrentUser()); List<ParseQuery<Album>> queries = new ArrayList<>(); queries.add(queryAuthor); queries.add(queryCollaborator); ParseQuery<Album> mainQuery = ParseQuery.or(queries); mainQuery.orderByDescending("createdAt"); mainQuery.findInBackground( new FindCallback<Album>() { public void done(List<Album> results, ParseException e) { if (e == null) { mAllAlbums = results; mAdapter.setAlbums(mAllAlbums); mResultsView.scrollToPosition(0); } } }); }
private void loadData() { Log.d(TAG, "friends load Data" + isLoadData); if (!isLoadData) { // Build query ParseQuery<ParseObject> qUser = ParseQuery.getQuery("User_friends"); qUser.whereEqualTo("user_id", parseUser); ParseQuery<ParseObject> qFriend = ParseQuery.getQuery("User_friends"); qFriend.whereEqualTo("friend_id", parseUser); ArrayList<ParseQuery<ParseObject>> queries = new ArrayList<ParseQuery<ParseObject>>(); queries.add(qUser); queries.add(qFriend); ParseQuery<ParseObject> mainQuery = ParseQuery.or(queries); mainQuery.include("user_id"); mainQuery.include("friend_id"); mainQuery.findInBackground( new FindCallback<ParseObject>() { @Override public void done(List<ParseObject> list, ParseException e) { // clean array UserFriendsIdList.clear(); MyInviteIdList.clear(); UserInvitesIdList.clear(); UserInvitesList.clear(); if (e == null) { int i = 0; while (list.size() > i) { ParseObject obj = list.get(i); String id_User; ParseUser userFriend; Log.d(TAG, "id = " + obj.getObjectId()); if (obj.getParseUser("user_id").equals(parseUser)) { Log.d(TAG, "userFriend = " + obj.getParseUser("friend_id").getUsername()); id_User = obj.getParseUser("friend_id").getObjectId(); userFriend = obj.getParseUser("friend_id"); } else { Log.d(TAG, "userFriend = " + obj.getParseUser("user_id").getUsername()); id_User = obj.getParseUser("user_id").getObjectId(); userFriend = obj.getParseUser("user_id"); } if (obj.getBoolean("accept")) { Log.d(TAG, "accept "); UserFriendsIdList.add(id_User); UserFriendsList.add(new Friend(userFriend)); } else { if (obj.getParseUser("user_id").equals(parseUser)) { Log.d(TAG, "to my invites"); MyInviteIdList.add(id_User); } else { Log.d(TAG, "to userinvites"); UserInvitesIdList.add(id_User); UserInvitesList.add(new Friend(userFriend)); } } i++; } } else { Log.d(TAG, "Open alert 1"); openAlertError(); } isLoadData = true; } }); } }