// Path: src/main/java/org/ligi/axt/AXT.java
// public class AXT {
//     public static CheckBoxAXT at(CheckBox checkBox) {
//         return new CheckBoxAXT(checkBox);
//     }
// 
//     public static BitmapAXT at(Bitmap bitmap) {
//         return new BitmapAXT(bitmap);
//     }
// 
//     public static ActivityAXT at(Activity activity) {
//         return new ActivityAXT(activity);
//     }
// 
//     public static FragmentAXT at(Fragment fragment) {
//         return new FragmentAXT(fragment);
//     }
// 
//     public static FileAXT at(File file) {
//         return new FileAXT(file);
//     }
// 
//     public static <T> ArrayAXT<T> at(T[] arr) {
//         return new ArrayAXT<T>(arr);
//     }
// 
//     public static IntentAXT at(Intent intent) {
//         return new IntentAXT(intent);
//     }
// 
//     public static URLAXT at(URL url) {
//         return new URLAXT(url);
//     }
// 
//     public static EditTextAXT at(EditText editText) {
//         return new EditTextAXT(editText);
//     }
// 
//     public static ContextAXT at(Context ctx) {
//         return new ContextAXT(ctx);
//     }
// 
//     public static InputStreamAXT at(InputStream inputStream) {
//         return new InputStreamAXT(inputStream);
//     }
// 
//     public static ViewAXT at(View view) {
//         return new ViewAXT(view);
//     }
// 
//     public static PaintAXT at(Paint paint) {
//         return new PaintAXT(paint);
//     }
// 
//     public static WindowManagerAXT at(WindowManager windowManager) {
//         return new WindowManagerAXT(windowManager);
//     }
// 
//     public static ResolveInfoAXT at(ResolveInfo resolveInfo) {
//         return new ResolveInfoAXT(resolveInfo);
//     }
// 
//     public static StringAXT at(String string) {
//         return new StringAXT(string);
//     }
// 
//     public static UriAXT at(Uri uri) {
//         return new UriAXT(uri);
//     }
// }


import android.annotation.TargetApi;
import android.content.ContentUris;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.provider.DocumentsContract;
import android.provider.MediaStore;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import org.ligi.axt.AXT;
        else id = wholeID;

        final String[] column = {MediaStore.Images.Media.DATA};

        // where id is equal to
        final String sel = MediaStore.Images.Media._ID + "=?";

        final Cursor innerCursor = context.getContentResolver().
                query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, column, sel, new String[]{id}, null);

        final int columnIndex = innerCursor.getColumnIndex(column[0]);

        if (innerCursor.moveToFirst()) {
            return innerCursor.getString(columnIndex);
        }
        return null;
    }


    private File getBitmap(String tag, Uri url) {
        final File cacheDir = context.getCacheDir();

        if (!cacheDir.exists()) {
            cacheDir.mkdirs();
        }

        final File f = new File(cacheDir, tag);

        try {
            final InputStream is = getInputStreamByURL(url);
// Path: src/main/java/org/ligi/axt/AXT.java
// public class AXT {
//     public static CheckBoxAXT at(CheckBox checkBox) {
//         return new CheckBoxAXT(checkBox);
//     }
// 
//     public static BitmapAXT at(Bitmap bitmap) {
//         return new BitmapAXT(bitmap);
//     }
// 
//     public static ActivityAXT at(Activity activity) {
//         return new ActivityAXT(activity);
//     }
// 
//     public static FragmentAXT at(Fragment fragment) {
//         return new FragmentAXT(fragment);
//     }
// 
//     public static FileAXT at(File file) {
//         return new FileAXT(file);
//     }
// 
//     public static <T> ArrayAXT<T> at(T[] arr) {
//         return new ArrayAXT<T>(arr);
//     }
// 
//     public static IntentAXT at(Intent intent) {
//         return new IntentAXT(intent);
//     }
// 
//     public static URLAXT at(URL url) {
//         return new URLAXT(url);
//     }
// 
//     public static EditTextAXT at(EditText editText) {
//         return new EditTextAXT(editText);
//     }
// 
//     public static ContextAXT at(Context ctx) {
//         return new ContextAXT(ctx);
//     }
// 
//     public static InputStreamAXT at(InputStream inputStream) {
//         return new InputStreamAXT(inputStream);
//     }
// 
//     public static ViewAXT at(View view) {
//         return new ViewAXT(view);
//     }
// 
//     public static PaintAXT at(Paint paint) {
//         return new PaintAXT(paint);
//     }
// 
//     public static WindowManagerAXT at(WindowManager windowManager) {
//         return new WindowManagerAXT(windowManager);
//     }
// 
//     public static ResolveInfoAXT at(ResolveInfo resolveInfo) {
//         return new ResolveInfoAXT(resolveInfo);
//     }
// 
//     public static StringAXT at(String string) {
//         return new StringAXT(string);
//     }
// 
//     public static UriAXT at(Uri uri) {
//         return new UriAXT(uri);
//     }
// }


// Path: src/main/java/org/ligi/axt/converter/ImageFromIntentUriToFileConverter.java
import android.annotation.TargetApi;
import android.content.ContentUris;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.provider.DocumentsContract;
import android.provider.MediaStore;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import org.ligi.axt.AXT;

        else id = wholeID;

        final String[] column = {MediaStore.Images.Media.DATA};

        // where id is equal to
        final String sel = MediaStore.Images.Media._ID + "=?";

        final Cursor innerCursor = context.getContentResolver().
                query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, column, sel, new String[]{id}, null);

        final int columnIndex = innerCursor.getColumnIndex(column[0]);

        if (innerCursor.moveToFirst()) {
            return innerCursor.getString(columnIndex);
        }
        return null;
    }


    private File getBitmap(String tag, Uri url) {
        final File cacheDir = context.getCacheDir();

        if (!cacheDir.exists()) {
            cacheDir.mkdirs();
        }

        final File f = new File(cacheDir, tag);

        try {
            final InputStream is = getInputStreamByURL(url);
            AXT.at(is).toFile(f);