List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot getKind
int getKind() throws JavaModelException;
From source file:org.jboss.tools.ws.creation.core.utils.JBossWSCreationUtils.java
License:Open Source License
public static List<String> getJavaProjectSrcFolder(IProject project) throws JavaModelException { IPackageFragmentRoot[] packageFragmentRoots = JavaCore.create(project).getAllPackageFragmentRoots(); if (packageFragmentRoots != null && packageFragmentRoots.length > 0) { List<String> list = new ArrayList<String>(); for (int i = 0; i < packageFragmentRoots.length; i++) { IPackageFragmentRoot packageFragmentRoot = packageFragmentRoots[i]; if (packageFragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE) { list.add(packageFragmentRoot.getResource().getFullPath().toOSString()); }/*from ww w. j a va 2 s . co m*/ } return list; } return null; }
From source file:org.jboss.tools.ws.jaxrs.ui.wizards.JaxrsApplicationCreationWizardPage.java
License:Open Source License
/** * Attempts to set the defaults values from the given * {@link UriPathTemplateCategory}/*from w w w . java2 s.c o m*/ * */ private void setDefaultValues(final UriPathTemplateCategory category) { final IJavaProject javaProject = category.getJavaProject(); try { final IPackageFragmentRoot[] packageFragmentRoots = javaProject.getAllPackageFragmentRoots(); for (IPackageFragmentRoot packageFragmentRoot : packageFragmentRoots) { if (packageFragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE) { setDefaultValues(packageFragmentRoot); break; } } } catch (JavaModelException e) { Logger.error("Failed to set the default values from project '" + javaProject.getElementName() + "'", e); } }
From source file:org.jboss.tools.ws.jaxrs.ui.wizards.JaxrsResourceCreationWizardPage.java
License:Open Source License
/** * Attempts to set the defaults values from the given * {@link UriPathTemplateCategory}//from www .j a v a2 s . com * */ private void setDefaultValues(final UriPathTemplateCategory category) { final IJavaProject javaProject = category.getJavaProject(); try { final IPackageFragmentRoot[] packageFragmentRoots = javaProject.getAllPackageFragmentRoots(); for (IPackageFragmentRoot packageFragmentRoot : packageFragmentRoots) { if (packageFragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE) { setPackageFragmentRoot(packageFragmentRoot, true); break; } } } catch (JavaModelException e) { Logger.error("Failed to set the default values from project '" + javaProject.getElementName() + "'", e); } }
From source file:org.key_project.util.jdt.JDTUtil.java
License:Open Source License
/** * Returns the {@link IResource}s of the given {@link IClasspathEntry}. * @param javaProject The actual {@link IJavaProject} that provides the {@link IClasspathEntry}. * @param entry The given {@link IClasspathEntry}. * @param alreadyHandledProjects The already handled {@link IProject} that don't need to be analysed again. * @return The found {@link IResource}s. * @throws JavaModelException //from w w w . j av a2 s .co m */ private static List<IResource> getResourceFor(IJavaProject javaProject, IClasspathEntry entry, int expectedKind, Set<IProject> alreadyHandledProjects) throws JavaModelException { if (entry != null) { if (entry.getEntryKind() == IClasspathEntry.CPE_CONTAINER || entry.getEntryKind() == IClasspathEntry.CPE_SOURCE || entry.getEntryKind() == IClasspathEntry.CPE_LIBRARY || entry.getEntryKind() == IClasspathEntry.CPE_VARIABLE) { List<IResource> result = new LinkedList<IResource>(); IPackageFragmentRoot[] roots = javaProject.findPackageFragmentRoots(entry); for (IPackageFragmentRoot root : roots) { if (root.getKind() == expectedKind) { if (root.getResource() != null) { if (root.getResource().getLocationURI() != null) { result.add(root.getResource()); } } else if (root.getPath() != null) { IResource resource = ResourcesPlugin.getWorkspace().getRoot() .findMember(root.getPath()); if (resource != null && resource.exists()) { result.add(resource); } } } } return result; // Ignore containers } else if (entry.getEntryKind() == IClasspathEntry.CPE_PROJECT) { Assert.isNotNull(entry.getPath()); IResource project = ResourcesPlugin.getWorkspace().getRoot().findMember(entry.getPath()); Assert.isTrue(project instanceof IProject); if (!alreadyHandledProjects.contains(project)) { return getSourceResources((IProject) project, alreadyHandledProjects); } else { return null; // Project was already analyzed, no need to do it again. } } else { Assert.isTrue(false, "Unknown content kind \"" + entry.getContentKind() + "\" of class path entry \"" + entry + "\"."); return null; } } else { return null; } }
From source file:org.key_project.util.jdt.JDTUtil.java
License:Open Source License
/** * Returns the locations of the given {@link IClasspathEntry}. * @param javaProject The actual {@link IJavaProject} that provides the {@link IClasspathEntry}. * @param entry The given {@link IClasspathEntry}. * @param alreadyHandledProjects The already handled {@link IProject} that don't need to be analysed again. * @return The found locations./*from w ww . j av a2s . c o m*/ * @throws JavaModelException */ private static List<File> getLocationFor(IJavaProject javaProject, IClasspathEntry entry, int expectedKind, Set<IProject> alreadyHandledProjects) throws JavaModelException { if (entry != null) { if (entry.getEntryKind() == IClasspathEntry.CPE_CONTAINER || entry.getEntryKind() == IClasspathEntry.CPE_SOURCE || entry.getEntryKind() == IClasspathEntry.CPE_LIBRARY || entry.getEntryKind() == IClasspathEntry.CPE_VARIABLE) { List<File> result = new LinkedList<File>(); IPackageFragmentRoot[] roots = javaProject.findPackageFragmentRoots(entry); for (IPackageFragmentRoot root : roots) { if (root.getKind() == expectedKind) { if (root.getResource() != null) { if (root.getResource().getLocationURI() != null) { result.add(ResourceUtil.getLocation(root.getResource())); } } else if (root.getPath() != null) { File location = new File(root.getPath().toString()); if (location.exists()) { result.add(location); } } } } return result; // Ignore containers } else if (entry.getEntryKind() == IClasspathEntry.CPE_PROJECT) { Assert.isNotNull(entry.getPath()); IResource project = ResourcesPlugin.getWorkspace().getRoot().findMember(entry.getPath()); Assert.isTrue(project instanceof IProject); if (!alreadyHandledProjects.contains(project)) { return getSourceLocations((IProject) project, alreadyHandledProjects); } else { return null; // Project was already analyzed, no need to do it again. } } else { Assert.isTrue(false, "Unknown content kind \"" + entry.getContentKind() + "\" of class path entry \"" + entry + "\"."); return null; } } else { return null; } }
From source file:org.libreoffice.ide.eclipse.java.JavaMainProvider.java
License:LGPL
/** * Recursive method to find the Classes and check their hierarchy. * * @param pElement the Java AST element for scan for XMain implementations * @return the names of the classes implementing the XMain interface in the * Java AST element.//from w w w .j a va 2s . com */ private Vector<String> getInternalMainNames(IParent pElement) { Vector<String> mains = new Vector<String>(); try { for (IJavaElement child : pElement.getChildren()) { boolean visit = true; if (child instanceof IPackageFragmentRoot) { IPackageFragmentRoot root = (IPackageFragmentRoot) child; if (root.getKind() != IPackageFragmentRoot.K_SOURCE) { visit = false; } } if (visit) { if (child instanceof ICompilationUnit) { ICompilationUnit unit = (ICompilationUnit) child; IType type = unit.findPrimaryType(); if (isMainImplementation(type)) { mains.add(type.getFullyQualifiedName()); } } else if (child instanceof IParent) { mains.addAll(getInternalMainNames((IParent) child)); } } } } catch (Exception e) { } return mains; }
From source file:org.limy.eclipse.qalab.ant.UmlgraphCreator.java
License:Open Source License
/** * @param targetEl// w w w.java 2s. co m * @param env * @param targetProject * @return Element???? true * @throws CoreException */ private boolean createJavadocElement(XmlElement targetEl, LimyQalabEnvironment env, IProject targetProject) throws CoreException { XmlElement javadocEl = createElement(targetEl, "javadoc"); IJavaProject javaProject = JavaCore.create(targetProject); IPreferenceStore store = env.getStore(); IPackageFragmentRoot[] roots = javaProject.getAllPackageFragmentRoots(); // v?WFNg\?[XfBNg boolean isEmpty = true; for (IPackageFragmentRoot root : roots) { if (root.getKind() == IPackageFragmentRoot.K_SOURCE && root.getJavaProject().equals(javaProject)) { IResource rootDir = root.getResource(); if (((IContainer) rootDir).members().length > 0) { isEmpty = false; } XmlElement fileEl = createElement(javadocEl, "fileset", "dir", rootDir.getLocation().toString()); fileEl.setAttribute("includes", "**/*.java"); fileEl.setAttribute("excludes", "**/*Test.java"); } } // \?[Xt@C??javadocvf? if (isEmpty) { targetEl.removeChild(javadocEl); return false; } javadocEl.setAttribute("destDir", "${dest.dir}/javadoc/" + targetProject.getName()); javadocEl.setAttribute("Encoding", "${src.encoding}"); javadocEl.setAttribute("classpathref", "all.classpath"); javadocEl.setAttribute("private", "false"); javadocEl.setAttribute("packagenames", "*"); javadocEl.setAttribute("useexternalfile", "yes"); XmlElement docletEl = createElement(javadocEl, "doclet"); docletEl.setAttribute("name", "gr.spinellis.umlgraph.doclet.UmlGraph"); docletEl.setAttribute("path", LimyQalabPluginUtils.getResourcePath("lib/UmlGraph.jar")); addParam(docletEl, "-collpackages", "java.util.*"); if (store.getBoolean(LimyQalabConstants.UMLGRAPH_INFERREL)) { addParam(docletEl, "-inferrel", null); } if (store.getBoolean(LimyQalabConstants.UMLGRAPH_HORIZONTAL)) { addParam(docletEl, "-horizontal", null); } String resources = env.getStore().getString(LimyQalabConstants.EXCLUDE_JDEPENDS); String[] excludes = resources.split("\n"); for (String exclude : excludes) { // ?K\\L java.* => ^java\..* // org.apache.* => ^org\.apache\..* if (exclude.length() > 0) { addParam(docletEl, "-hide", "^" + exclude.replaceAll("\\.", "\\\\.").replaceAll("\\*", ".*")); } } return true; }
From source file:org.limy.eclipse.qalab.common.LimyQalabEnvironment.java
License:Open Source License
/** * Javav?WFNgS\?[XpX?iQ?v?WFNg?j?B/*from w ww .jav a2 s. c o m*/ * @param project Javav?WFNg * @return S\?[XpX * @throws JavaModelException JavafO */ private Collection<IJavaElement> getAllJavaElements(IJavaProject project) throws JavaModelException { Collection<IJavaElement> results = new ArrayList<IJavaElement>(); IPackageFragmentRoot[] roots = project.getAllPackageFragmentRoots(); // v?WFNgS\?[XpXQ?v?WFNg?[v for (IPackageFragmentRoot root : roots) { if (root.getKind() == IPackageFragmentRoot.K_SOURCE) { results.add(root); } } return results; }
From source file:org.limy.eclipse.qalab.common.LimyQalabEnvironment.java
License:Open Source License
/** * Javav?WFNg?o?fBNg?B// w ww . ja v a 2 s.co m * @param env * @param enableRef Q?v?WFNg? * @return Javav?WFNg\?[XfBNg * @throws JavaModelException JavafO */ private Collection<IPath> privateGetBinPaths(LimyQalabEnvironment env, boolean enableRef) throws JavaModelException { IJavaProject project = env.getJavaProject(); Set<IPath> results = new HashSet<IPath>(); if (enableRef && store.getBoolean(LimyQalabConstants.ENABLE_REFPROJECT)) { // Q?v?WFNgL?? IPackageFragmentRoot[] roots = project.getAllPackageFragmentRoots(); for (IPackageFragmentRoot refRoot : roots) { if (refRoot.getKind() == IPackageFragmentRoot.K_SOURCE) { // Q?v?WFNg?[v IJavaProject refProject = refRoot.getJavaProject(); LimyQalabUtils.appendProjectBinPaths(refProject, results); } } } else { // ftHgv?WFNg?ofBNg LimyQalabUtils.appendProjectBinPaths(project, results); } return results; }
From source file:org.limy.eclipse.qalab.common.LimyQalabJavaUtils.java
License:Open Source License
/** * PackageFragmentRoot?pX?B/*from w w w. ja va 2 s. c om*/ * @param fragment PackageFragmentRoot * @return * @throws CoreException */ public static String getExternalLocation(IPackageFragmentRoot fragment) throws CoreException { String location = null; if (fragment.getKind() == IPackageFragmentRoot.K_SOURCE) { // v?WFNgQ?v?WFNg\?[XfBNg IPath outputLocation = fragment.getRawClasspathEntry().getOutputLocation(); if (outputLocation != null) { // \?[XpXL?o?w?? location = LimyQalabUtils.createFullPath(fragment.getJavaProject(), outputLocation); } else { // \?[XpXL?o?w???Av?WFNgftHg?o?gp location = LimyQalabUtils.createFullPath(fragment.getJavaProject(), fragment.getJavaProject().getOutputLocation()); } } else { // v?WFNgclasspathQ?v?WFNgExportCu IResource resource = fragment.getResource(); if (resource != null) { location = resource.getLocation().toString(); } else { // Variablewjart@Cresource = null IPath path = fragment.getRawClasspathEntry().getPath(); if (!path.toString().startsWith("org.eclipse.jdt.launching.JRE_CONTAINER")) { // JREOJARt@C?iVariablew?jNXpX location = fragment.getPath().toString(); } } } return location; }