question: public static List < User > from ( Cursor c ) { List < User > users = null ; int count = c . getCount ( ) ; if ( count > 0 ) { users = new ArrayList < > ( count ) ; while ( c . moveToNext ( ) ) { User user = new User ( ) ; Syncing . from ( c , user ) ; int col = c . getColumnIndex ( EMAIL_HASH ) ; if ( col >= 0 ) { user . emailHash = c . getString ( col ) ; } col = c . getColumnIndex ( FOLLOWING ) ; if ( col >= 0 ) { user . isFollowing = c . getInt ( col ) == 1 ; } users . add ( user ) ; } } c . close ( ) ; return users ; }
target:  Get contacts from the cursor and then close it.