List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot isArchive
public boolean isArchive();
From source file:com.google.gwt.eclipse.core.modules.ModuleUtils.java
License:Open Source License
/** * Scans the package fragments (including jars if includeJars is true) invoking the visitor * callback./* w w w. jav a 2 s .c o m*/ * * Stops if the callback returns a non-null result, and passes that result back to the caller. */ private static <T> T visitFragments(IJavaProject project, boolean includeJars, IPackageFragmentVisitor<T> visitor) { try { for (IPackageFragmentRoot pckgRoot : project.getPackageFragmentRoots()) { if (pckgRoot.isArchive() && !includeJars) { continue; } for (IJavaElement elem : pckgRoot.getChildren()) { T result = visitor.visit((IPackageFragment) elem); if (result != null) { return result; } } } } catch (JavaModelException e) { GWTPluginLog.logError(e); } return null; }
From source file:com.google.gwt.eclipse.devtoolsgen.actions.PopulateGwtDevTools.java
License:Open Source License
private static IFile findFileOnClasspath(IJavaProject javaProject, IPath classpathRelativePath) throws JavaModelException { for (IPackageFragmentRoot pckgFragmentRoot : javaProject.getPackageFragmentRoots()) { if (pckgFragmentRoot.isArchive()) { continue; }/* w w w . j a v a 2 s. c om*/ IPath filepath = pckgFragmentRoot.getPath().append(classpathRelativePath); IResource res = ResourcesPlugin.getWorkspace().getRoot().findMember(filepath); if (res instanceof IFile) { return (IFile) res; } } return null; }
From source file:com.google.test.metric.eclipse.internal.util.JavaProjectHelper.java
License:Apache License
public List<String> getAllJavaPackages(IJavaProject javaProject) throws JavaModelException, CoreException { List<String> allJavaPackages = new ArrayList<String>(); IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots(); for (IPackageFragmentRoot root : roots) { if (!root.isArchive()) { IResource rootResource = root.getCorrespondingResource(); String rootURL = rootResource.getFullPath().toOSString(); rootResource.accept(new JavaPackageVisitor(allJavaPackages, rootURL), IContainer.NONE); }// w w w.j a v a2 s.c o m } return allJavaPackages; }
From source file:com.google.test.metric.eclipse.internal.util.JavaProjectHelper.java
License:Apache License
public List<IPackageFragmentRoot> getAllJavaPackageFragmentRoots(IJavaProject javaProject) throws JavaModelException, CoreException { List<IPackageFragmentRoot> allJavaPackageFragmentRoot = new ArrayList<IPackageFragmentRoot>(); IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots(); for (IPackageFragmentRoot root : roots) { if (!root.isArchive() && !root.getElementName().equals("")) { allJavaPackageFragmentRoot.add(root); }/*from www . j a v a 2 s .c o m*/ } return allJavaPackageFragmentRoot; }
From source file:com.google.test.metric.eclipse.ui.internal.TestabilityReportLaunchListener.java
License:Apache License
private void createMarkersFromClassIssues(List<ClassIssues> classIssues, IJavaProject javaProject) throws CoreException { javaProject.getProject().deleteMarkers(TestabilityConstants.TESTABILITY_COLLABORATOR_MARKER_TYPE, true, IResource.DEPTH_INFINITE);/*w w w . java 2s . co m*/ javaProject.getProject().deleteMarkers(TestabilityConstants.TESTABILITY_CONSTRUCTOR_MARKER_TYPE, true, IResource.DEPTH_INFINITE); javaProject.getProject().deleteMarkers(TestabilityConstants.TESTABILITY_DIRECT_COST_MARKER_TYPE, true, IResource.DEPTH_INFINITE); IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots(); List<IPath> sourceFolderPaths = new ArrayList<IPath>(); for (IPackageFragmentRoot root : roots) { if (!root.isArchive()) { IResource rootResource = root.getCorrespondingResource(); sourceFolderPaths.add(rootResource.getFullPath().removeFirstSegments(1)); } } for (ClassIssues classIssue : classIssues) { IResource resource = getAbsolutePathFromJavaFile(classIssue.getClassName(), sourceFolderPaths, javaProject.getProject()); if (resource != null) { for (Issue issue : classIssue.getMostImportantIssues()) { Map<String, Object> attributes = new HashMap<String, Object>(); attributes.put(IMarker.SEVERITY, IMarker.SEVERITY_ERROR); attributes.put(IMarker.LINE_NUMBER, issue.getLocation().getLineNumber()); attributes.put(IMarker.MESSAGE, retriever.getSuggestion(issue.getType(), issue.getSubType())); IssueType issueType = issue.getType(); attributes.put(TestabilityConstants.ISSUE_TYPE, issue.getType().toString()); String markerType = null; if (IssueType.COLLABORATOR.equals(issueType)) { markerType = TestabilityConstants.TESTABILITY_COLLABORATOR_MARKER_TYPE; } else if (IssueType.CONSTRUCTION.equals(issueType)) { markerType = TestabilityConstants.TESTABILITY_CONSTRUCTOR_MARKER_TYPE; } else if (IssueType.DIRECT_COST.equals(issueType)) { markerType = TestabilityConstants.TESTABILITY_DIRECT_COST_MARKER_TYPE; } if (markerType != null) { MarkerUtilities.createMarker(resource, attributes, markerType); } } } else { logger.logException("No Resource found for Class : " + classIssue.getClassName(), null); } } }
From source file:com.iw.plugins.spindle.wizards.fields.ContainerDialogField.java
License:Mozilla Public License
public void init(IJavaElement elem, IRunnableContext context) { super.init(context); setButtonLabel(MessageUtil.getString(name + ".button")); IPackageFragmentRoot initRoot = null; if (elem != null) { initRoot = Utils.getPackageFragmentRoot(elem); if (initRoot == null || initRoot.isArchive()) { IJavaProject jproject = elem.getJavaProject(); try { initRoot = null;// w w w. ja va2 s .c om IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) { initRoot = roots[i]; break; } } } catch (JavaModelException e) { TapestryPlugin.getDefault().logException(e); } if (initRoot == null) { initRoot = jproject.getPackageFragmentRoot(""); } } setPackageFragmentRoot(initRoot, true); } }
From source file:com.microsoft.javapkgsrv.JavaElementLabelComposer.java
License:Open Source License
/** * Appends the label for a package fragment root. Considers the ROOT_* flags. * * @param root the element to render/*from w w w.j a va 2 s .c o m*/ * @param flags the rendering flags. Flags with names starting with ROOT_' are considered. */ public void appendPackageFragmentRootLabel(IPackageFragmentRoot root, long flags) { // Handle variables different if (getFlag(flags, ROOT_VARIABLE) && appendVariableLabel(root, flags)) return; if (root.isArchive()) appendArchiveLabel(root, flags); else appendFolderLabel(root, flags); }
From source file:com.microsoft.javapkgsrv.JavaElementLabelComposer.java
License:Open Source License
private static IClasspathEntry getClasspathEntry(IPackageFragmentRoot root) throws JavaModelException { IClasspathEntry rawEntry = root.getRawClasspathEntry(); int rawEntryKind = rawEntry.getEntryKind(); switch (rawEntryKind) { case IClasspathEntry.CPE_LIBRARY: case IClasspathEntry.CPE_VARIABLE: case IClasspathEntry.CPE_CONTAINER: // should not happen, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=305037 if (root.isArchive() && root.getKind() == IPackageFragmentRoot.K_BINARY) { IClasspathEntry resolvedEntry = root.getResolvedClasspathEntry(); if (resolvedEntry.getReferencingEntry() != null) return resolvedEntry; else/* w w w . jav a 2 s . c om*/ return rawEntry; } } return rawEntry; }
From source file:com.redhat.ceylon.eclipse.code.explorer.JavaElementImageProvider.java
License:Open Source License
/** * Returns an image descriptor for a java element. This is the base image, no overlays. * @param element the element/*w w w . jav a 2s .c om*/ * @param renderFlags the image flags * @return returns the image descriptor */ public ImageDescriptor getBaseImageDescriptor(IJavaElement element, int renderFlags) { try { switch (element.getElementType()) { case IJavaElement.INITIALIZER: return JavaPluginImages.DESC_MISC_PRIVATE; // 23479 case IJavaElement.METHOD: { IMethod method = (IMethod) element; IType declType = method.getDeclaringType(); int flags = method.getFlags(); if (declType.isEnum() && isDefaultFlag(flags) && method.isConstructor()) return JavaPluginImages.DESC_MISC_PRIVATE; return getMethodImageDescriptor(JavaModelUtil.isInterfaceOrAnnotation(declType), flags); } case IJavaElement.FIELD: { IMember member = (IMember) element; IType declType = member.getDeclaringType(); return getFieldImageDescriptor(JavaModelUtil.isInterfaceOrAnnotation(declType), member.getFlags()); } case IJavaElement.LOCAL_VARIABLE: return JavaPluginImages.DESC_OBJS_LOCAL_VARIABLE; case IJavaElement.PACKAGE_DECLARATION: return JavaPluginImages.DESC_OBJS_PACKDECL; case IJavaElement.IMPORT_DECLARATION: return JavaPluginImages.DESC_OBJS_IMPDECL; case IJavaElement.IMPORT_CONTAINER: return JavaPluginImages.DESC_OBJS_IMPCONT; case IJavaElement.TYPE: { IType type = (IType) element; IType declType = type.getDeclaringType(); boolean isInner = declType != null; boolean isInInterfaceOrAnnotation = isInner && JavaModelUtil.isInterfaceOrAnnotation(declType); return getTypeImageDescriptor(isInner, isInInterfaceOrAnnotation, type.getFlags(), useLightIcons(renderFlags)); } case IJavaElement.PACKAGE_FRAGMENT_ROOT: { IPackageFragmentRoot root = (IPackageFragmentRoot) element; IPath attach = root.getSourceAttachmentPath(); if (root.getKind() == IPackageFragmentRoot.K_BINARY) { if (root.isArchive()) { if (root.isExternal()) { if (attach == null) { return JavaPluginImages.DESC_OBJS_EXTJAR; } else { return JavaPluginImages.DESC_OBJS_EXTJAR_WSRC; } } else { if (attach == null) { return JavaPluginImages.DESC_OBJS_JAR; } else { return JavaPluginImages.DESC_OBJS_JAR_WSRC; } } } else { if (attach == null) { return JavaPluginImages.DESC_OBJS_CLASSFOLDER; } else { return JavaPluginImages.DESC_OBJS_CLASSFOLDER_WSRC; } } } else { return JavaPluginImages.DESC_OBJS_PACKFRAG_ROOT; } } case IJavaElement.PACKAGE_FRAGMENT: return getPackageFragmentIcon(element); case IJavaElement.COMPILATION_UNIT: return JavaPluginImages.DESC_OBJS_CUNIT; case IJavaElement.CLASS_FILE: /* this is too expensive for large packages try { IClassFile cfile= (IClassFile)element; if (cfile.isClass()) return JavaPluginImages.IMG_OBJS_CFILECLASS; return JavaPluginImages.IMG_OBJS_CFILEINT; } catch(JavaModelException e) { // fall through; }*/ return JavaPluginImages.DESC_OBJS_CFILE; case IJavaElement.JAVA_PROJECT: IJavaProject jp = (IJavaProject) element; if (jp.getProject().isOpen()) { IProject project = jp.getProject(); IWorkbenchAdapter adapter = (IWorkbenchAdapter) project.getAdapter(IWorkbenchAdapter.class); if (adapter != null) { ImageDescriptor result = adapter.getImageDescriptor(project); if (result != null) return result; } return DESC_OBJ_PROJECT; } return DESC_OBJ_PROJECT_CLOSED; case IJavaElement.JAVA_MODEL: return JavaPluginImages.DESC_OBJS_JAVA_MODEL; case IJavaElement.TYPE_PARAMETER: return JavaPluginImages.DESC_OBJS_TYPEVARIABLE; case IJavaElement.ANNOTATION: return JavaPluginImages.DESC_OBJS_ANNOTATION; default: // ignore. Must be a new, yet unknown Java element // give an advanced IWorkbenchAdapter the chance IWorkbenchAdapter wbAdapter = (IWorkbenchAdapter) element.getAdapter(IWorkbenchAdapter.class); if (wbAdapter != null && !(wbAdapter instanceof JavaWorkbenchAdapter)) { // avoid recursion ImageDescriptor imageDescriptor = wbAdapter.getImageDescriptor(element); if (imageDescriptor != null) { return imageDescriptor; } } return JavaPluginImages.DESC_OBJS_GHOST; } } catch (JavaModelException e) { if (e.isDoesNotExist()) return JavaPluginImages.DESC_OBJS_UNKNOWN; JavaPlugin.log(e); return JavaPluginImages.DESC_OBJS_GHOST; } }
From source file:com.redhat.ceylon.eclipse.core.model.JDTModuleManager.java
License:Open Source License
private static boolean moduleFileInProject(String moduleName, IJavaProject p) { if (p == null) { return false; }// w ww . j a v a 2 s . c o m try { for (IPackageFragmentRoot sourceFolder : p.getPackageFragmentRoots()) { if (!sourceFolder.isArchive() && sourceFolder.exists() && sourceFolder.getKind() == IPackageFragmentRoot.K_SOURCE && sourceFolder.getPackageFragment(moduleName).exists()) { return true; } /*IPath moduleFile = sourceFolder.append(moduleName.replace('.', '/') + "/module.ceylon").makeRelativeTo(p.getFullPath()); if (p.getFile(moduleFile).exists()) { return true; }*/ } } catch (JavaModelException e) { e.printStackTrace(); } return false; }