package me.ele.amigo.compat;
import java.lang.reflect.InvocationTargetException;
import me.ele.amigo.reflect.MethodUtils;
public class SingletonCompat {
private static Class sClass;
public static Class Class() throws ClassNotFoundException {
if (sClass == null) {
sClass = Class.forName("android.util.Singleton");
}
return sClass;
}
public static boolean isSingleton(Object obj) {
if (obj == null) {
return false;
} else {
try {
Class clazz = Class();
return clazz.isInstance(obj);
} catch (ClassNotFoundException e) {
return false;
}
}
}
public static Object get(Object targetSingleton) throws NoSuchMethodException,
IllegalAccessException, InvocationTargetException {
return MethodUtils.invokeMethod(targetSingleton, "get");
}
}