protected void deserialize(OMElement documentElement) { String fragmentHostAttribute = getAttribute(documentElement, "fragment-host"); setFragmentHost(fragmentHostAttribute); List<OMElement> childElements = getChildElements(documentElement, "jar"); for (OMElement element : childElements) { String jarName = getAttribute(element, "name"); List<String> packages = new ArrayList<String>(); List<OMElement> exportPackagesElements = getChildElements(element, "export-packages"); for (OMElement exportPackages : exportPackagesElements) { List<OMElement> exportPackageElements = getChildElements(exportPackages, "export-package"); for (OMElement packageElement : exportPackageElements) { packages.add(packageElement.getText()); } } getExportedPackageListsFromJar().put(jarName, packages); } childElements = getChildElements(documentElement, "project"); for (OMElement element : childElements) { String projectName = getAttribute(element, "name"); List<String> packages = new ArrayList<String>(); List<OMElement> exportPackagesElements = getChildElements(element, "export-packages"); for (OMElement exportPackages : exportPackagesElements) { List<OMElement> exportPackageElements = getChildElements(exportPackages, "export-package"); for (OMElement packageElement : exportPackageElements) { packages.add(packageElement.getText()); } } IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName); if (project != null) { getExportedPackageListsFromProject().put(project, packages); } } }