@@ -0,0 +1,2389 @@
+package com.cocoahero.android.essentials.io;%0A%0Aimport java.io.File;%0Aimport java.io.FileFilter;%0A%0Aimport android.os.AsyncTask;%0A%0A/**%0A * An %7B@link AsyncTask%7D subclass designed to fetch the list of files contained%0A * within a directory.%0A * %0A * To filter which files get returned, set the %7B@link FileFilter%7D property prior%0A * to executing the task.%0A */%0Apublic class AsyncFileListTask extends AsyncTask%3CVoid, Void, File%5B%5D%3E %7B%0A%0A    // ------------------------------------------------------------------------%0A    // Callback Interface%0A    // ------------------------------------------------------------------------%0A%0A    public interface Callback %7B%0A        public void onFileListCompleted(File directory, File%5B%5D files);%0A    %7D%0A%0A    // ------------------------------------------------------------------------%0A    // Instance Variables%0A    // ------------------------------------------------------------------------%0A%0A    private File mDirectory;%0A    private FileFilter mFilter;%0A    private AsyncFileListTask.Callback mCallback;%0A%0A    // ------------------------------------------------------------------------%0A    // Constructors%0A    // ------------------------------------------------------------------------%0A%0A    public AsyncFileListTask(File directory, FileFilter filter, AsyncFileListTask.Callback callback) %7B%0A        this.mDirectory = directory;%0A        this.mFilter = filter;%0A        this.mCallback = callback;%0A    %7D%0A%0A    // ------------------------------------------------------------------------%0A    // Public Methods%0A    // ------------------------------------------------------------------------%0A%0A    public void setDirectory(File directory) %7B%0A        this.mDirectory = directory;%0A    %7D%0A%0A    public void setFilter(FileFilter filter) %7B%0A        this.mFilter = filter;%0A    %7D%0A%0A    public void setCallback(AsyncFileListTask.Callback callback) %7B%0A        this.mCallback = callback;%0A    %7D%0A%0A    // ------------------------------------------------------------------------%0A    // Protected Methods%0A    // ------------------------------------------------------------------------%0A%0A    @Override%0A    protected File%5B%5D doInBackground(Void... params) %7B%0A        return this.mDirectory.listFiles(this.mFilter);%0A    %7D%0A%0A    @Override%0A    protected void onPostExecute(File%5B%5D results) %7B%0A        if (this.mCallback != null) %7B%0A            this.mCallback.onFileListCompleted(this.mDirectory, results);%0A        %7D%0A    %7D%0A%0A%7D%0A

Add AsyncFileListTask class