Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. ArrayList<Item> goodItems = new ArrayList<Item>();
  2. boolean isDone = false;
  3.  
  4. do{
  5. new dataTask().getMyData(new myCallback() {
  6. // ...some logic here...
  7. });
  8. }
  9. while(goodItems.size() < 20 || isDone != true);
  10.  
  11. private class DownloadTask extends AsyncTask<URL, Void, ArrayList<Item>> {
  12.  
  13. boolean isDone = false;
  14.  
  15. protected Long doInBackground(URL... urls) {
  16.  
  17. ArrayList<Item> goodItems = new ArrayList<Item>();
  18.  
  19. while (goodItems.size() < 20 || isDone != true) {
  20. // request and adding of items to goodItems
  21. }
  22.  
  23. return goodItems;
  24. }
  25.  
  26. protected void onPostExecute(ArrayList<Item> result) {
  27. // update views
  28. }
  29. }
  30.  
  31. new DownloadTask().execute("exampleurl.com/data");
  32.  
  33. MyCallback cb = new MyCallback(){
  34. if(goodItems.size() < 20) new DataTask().getMyData(cb);
  35. }
  36. new DataTask().getMyData(cb);
  37.  
  38. ArrayList<Item> goodItems = new ArrayList<Item>();
  39.  
  40. void fetchItems() {
  41. new dataTask().getMyData(new myCallback(){
  42. @Override
  43. public void onComplete(List<Item> items) {
  44. // some logic here
  45. if (goodItems.size() < 20 || isDone != true) {
  46. fetchItems();
  47. }
  48. }
  49. });
  50. }
  51.  
  52. void load() {
  53. new DataTask().getMyData(new MyCallback() {
  54. void onComplete(List<Item> items) {
  55. goodItems.addAll(items);
  56. if (goodItems.size() < 20) {
  57. load();
  58. }
  59. });
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement