@Override public void delete() { ItemConsumer consumer = new ItemConsumer() { public void consume(int index, MediaItem item) { if ((item.getSupportedOperations() & SUPPORT_DELETE) != 0) { item.delete(); } } }; mDataManager.mapMediaItems(mPaths, consumer, 0); }
public static ArrayList<MediaItem> getMediaItemFromPath( ArrayList<Path> paths, int start, int count, DataManager dataManager) { if (start >= paths.size()) { return new ArrayList<MediaItem>(); } int end = Math.min(start + count, paths.size()); ArrayList<Path> subset = new ArrayList<Path>(paths.subList(start, end)); final MediaItem[] buf = new MediaItem[end - start]; ItemConsumer consumer = new ItemConsumer() { @Override public void consume(int index, MediaItem item) { buf[index] = item; } }; dataManager.mapMediaItems(subset, consumer, 0); ArrayList<MediaItem> result = new ArrayList<MediaItem>(end - start); for (int i = 0; i < buf.length; i++) { result.add(buf[i]); } return result; }
@Override protected int enumerateMediaItems(ItemConsumer consumer, int startIndex) { mDataManager.mapMediaItems(mPaths, consumer, startIndex); return mPaths.size(); }