X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2FImageUtils.java;h=fb869294f2029bd1c0fd7f4a64680259ca4bc4b0;hb=9991e4e10cd1cb607210ecfda9ed48232574be21;hp=37d73191a52307641ef67f48bcd3f839786607f2;hpb=805005449dacb1e7b825db63836bf100e472ddd0;p=fanfix.git diff --git a/src/be/nikiroo/utils/ImageUtils.java b/src/be/nikiroo/utils/ImageUtils.java index 37d7319..fb86929 100644 --- a/src/be/nikiroo/utils/ImageUtils.java +++ b/src/be/nikiroo/utils/ImageUtils.java @@ -190,16 +190,28 @@ public abstract class ImageUtils { return set_flag; } + /** + * Check that the class can operate (for instance, that all the required + * libraries or frameworks are present). + * + * @return TRUE if it works + */ + abstract protected boolean check(); + /** * Create a new {@link ImageUtils}. * * @return the {@link ImageUtils} */ private static ImageUtils newObject() { - for (String clazz : new String[] { "be.nikiroo.utils.ui.ImageUtilsAwt" }) { + for (String clazz : new String[] { "be.nikiroo.utils.ui.ImageUtilsAwt", + "be.nikiroo.utils.android.ImageUtilsAndroid" }) { try { - return (ImageUtils) SerialUtils.createObject(clazz); - } catch (Exception e) { + ImageUtils obj = (ImageUtils) SerialUtils.createObject(clazz); + if (obj.check()) { + return obj; + } + } catch (Throwable e) { } }