IType activatorType = javaProject.findType(BundleActivator.class.getName());
if (activatorType != null) {
ITypeHierarchy hierarchy = activatorType.newTypeHierarchy(javaProject, monitor);
for (IType subType : hierarchy.getAllSubtypes(activatorType)) {
if (!Flags.isAbstract(subType.getFlags()) && subType.getElementName().toLowerCase().contains(prefix.toLowerCase())) {
result.add(new JavaTypeContentProposal(subType));
}
}
}
} catch (JavaModelException e) {
throw new InvocationTargetException(e);