public static boolean isExtractSupertypeAvailable(final IMember[] members) throws JavaModelException { if (members != null && members.length != 0) { final IType type= getTopLevelType(members); if (type != null && !type.isInterface()) return true; for (int index= 0; index < members.length; index++) { if (!isExtractSupertypeAvailable(members[index])) return false; } return isCommonDeclaringType(members);
public static boolean isExtractSupertypeAvailable(IMember member) throws JavaModelException { if (!member.exists()) return false; final int type= member.getElementType(); if (type != IJavaElement.METHOD && type != IJavaElement.FIELD && type != IJavaElement.TYPE) return false; if (JdtFlags.isEnum(member) && type != IJavaElement.TYPE) return false; if (!Checks.isAvailable(member)) return false; if (member instanceof IType) { if (!JdtFlags.isStatic(member) && !JdtFlags.isEnum(member) && !JdtFlags.isAnnotation(member)) return false;
	public static boolean isExtractSupertypeAvailable(final IMember[] members) throws JavaModelException {		if (members != null && members.length != 0) {			final IType type= getTopLevelType(members);			if (type != null && !type.isInterface())				return true;			for (int index= 0; index < members.length; index++) {				if (!isExtractSupertypeAvailable(members[index]))					return false;			}			return isCommonDeclaringType(members);		}		return false;	}