/** * @return The single child of the specified package or {@code null} if the package does not have * exactly one child. * * @param packageFragment The single child of this fragment will be retrieved. * @throws JavaModelException If accessing the packages in the package root fails. * * @see #getDirectChildren(IPackageFragment) */ public IPackageFragment getSingleChild(IPackageFragment packageFragment) throws JavaModelException { List<IPackageFragment> children= getDirectChildren(packageFragment); boolean hasSingleChild= children.size() == 1; if (hasSingleChild) { IPackageFragment singleChild= children.get(0); return singleChild; } return null; }
List<IPackageFragment> getDirectChildren(IPackageFragment packageFragment) throws JavaModelException { PackageCache packagesOfRoot= getPackageCache(packageFragment); return packagesOfRoot.getDirectChildren(packageFragment); }