/**
* Tests property, can throw {@link Exception}.
*/
private static boolean testEx(Object receiver, String property) throws Exception {
// prepare IJavaElement
final IJavaElement element;
if (receiver instanceof IAdaptable) {
element = (IJavaElement) ((IAdaptable) receiver).getAdapter(IJavaElement.class);
} else {
element = null;
}
// Java tests
{
// prepare java element
if (element == null || !element.exists()) {
return false;
}
// do tests
if (PROPERTY_IS_CONFIGURED.equals(property)) {
IJavaProject javaProject = element.getJavaProject();
boolean hasJar = javaProject.findType("com.extjs.gxt.ui.client.widget.Component") != null;
if (hasJar) {
IJavaElement pkg = element.getAncestor(IJavaElement.PACKAGE_FRAGMENT);
if (pkg != null) {
IResource resource = pkg.getUnderlyingResource();
ModuleDescription module = Utils.getSingleModule(resource);
return module != null && Utils.inheritsModule(module, "com.extjs.gxt.ui.GXT");
}
}
return false;