List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot K_SOURCE
int K_SOURCE
To view the source code for org.eclipse.jdt.core IPackageFragmentRoot K_SOURCE.
Click Source Link
From source file:org.entirej.ide.ui.utils.PackageAssistProvider.java
License:Apache License
public IContentProposal[] getProposals(String currentContent, int position) { final List<TypeProposal> proposals = new ArrayList<TypeProposal>(); if (currentContent.length() > position) { currentContent = currentContent.substring(0, position); }/* w ww . ja va 2 s . c om*/ IJavaProject javaProject = projectProvider.getJavaProject(); if (javaProject == null) return new IContentProposal[0]; if (javaProject.exists()) { try { IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) { IPackageFragmentRoot sourceRoot = roots[i]; if (sourceRoot != null && sourceRoot.exists()) { IJavaElement[] children = sourceRoot.getChildren(); for (IJavaElement element : children) { if (element instanceof IPackageFragment) { if (filterPkg(currentContent, position, element.getElementName())) { IPackageFragment fragment = (IPackageFragment) element; proposals.add(new TypeProposal(new Type(element.getElementName(), fragment.hasChildren() ? PKG_IMG : PKG_IMG_EMPTY), null)); } } } } } } } catch (JavaModelException e) { EJCoreLog.logException(e); } } Collections.sort(proposals, new Comparator<TypeProposal>() { public int compare(TypeProposal o1, TypeProposal o2) { return o1.type.pkg.compareTo(o2.type.pkg); } }); return proposals.toArray(new IContentProposal[0]); }
From source file:org.evolizer.changedistiller.job.ChangeDistiller.java
License:Apache License
private IStatus processElement(IJavaElement element, IProgressMonitor group, int tick) { Job changeDistillerJob = null;/*from www.jav a2 s . c o m*/ try { // ICompilationUnit if (element.getElementType() == IJavaElement.COMPILATION_UNIT) { changeDistillerJob = new SourceDistiller("Process class " + element.getElementName()); SourceDistiller job = (SourceDistiller) changeDistillerJob; List<Revision> revisions = ChangeDistillerPlugin.getPersistencyProvider() .query("from Revision as r where r.file.path like '%/" + element.getElementName() + "' and r.number not like '1.%.%'" + " order by r.report.creationTime asc", Revision.class); job.setProject(element.getJavaProject().getProject()); job.setRevisionsToDistill(revisions); // IPackageFragment; but only process source fragments (exclude binary Jars) } else if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { IPackageFragment fragment = (IPackageFragment) element; if ((fragment.getKind() == IPackageFragmentRoot.K_SOURCE) && fragment.containsJavaResources()) { changeDistillerJob = new PackageFragmentDistiller( "Process Package " + fragment.getElementName()); ((PackageFragmentDistiller) changeDistillerJob).setPackageFragment(fragment); } // IJavaProject } else if (element.getElementType() == IJavaElement.JAVA_PROJECT) { changeDistillerJob = new ProjectDistiller("Process project " + element.getElementName()); ((ProjectDistiller) changeDistillerJob).setJavaProject((IJavaProject) element); } } catch (JavaModelException e) { e.printStackTrace(); } if (changeDistillerJob != null) { changeDistillerJob.setProgressGroup(group, tick); changeDistillerJob.setPriority(Job.LONG); changeDistillerJob.schedule(); try { // wait until ChangeDistiller finished selected element changeDistillerJob.join(); } catch (InterruptedException e) { e.printStackTrace(); } return changeDistillerJob.getResult(); } return Status.OK_STATUS; }
From source file:org.evolizer.core.util.selectionhandling.JavaSelectionHelper.java
License:Apache License
/** * Returns the list of root package fragments of a given Java project. * /*from w w w. jav a2s. c o m*/ * @param project The Java project. * @return The list of root package fragments. * @throws EvolizerException */ public static List<IJavaElement> getPackageFragmentRoots(IJavaProject project) throws EvolizerException { List<IJavaElement> sourceRootPagckages = new ArrayList<IJavaElement>(); try { for (IPackageFragmentRoot root : project.getPackageFragmentRoots()) { if (root.getKind() == IPackageFragmentRoot.K_SOURCE) { sourceRootPagckages.add(root); } } } catch (JavaModelException jme) { throw new EvolizerException(jme); } return sourceRootPagckages; }
From source file:org.evolizer.famix.importer.ProjectParser.java
License:Apache License
/** * Return the list of source packages of an Eclipse Java project. * /*w w w . ja v a 2s .c o m*/ * @param project * Eclipse Java project. * @return List of source packages. */ private List<IPackageFragment> getSourcePackages(IJavaProject project) { List<IPackageFragment> fragments = new LinkedList<IPackageFragment>(); try { for (IPackageFragment lFragment : project.getPackageFragments()) { if (lFragment.getKind() == IPackageFragmentRoot.K_SOURCE) { fragments.add(lFragment); } } } catch (JavaModelException e) { sLogger.error("Error determining package fragments from Java project " + project.getElementName()); e.printStackTrace(); } return fragments; }
From source file:org.evosuite.eclipse.popup.actions.TestGenerationAction.java
License:Open Source License
/** * If there already exists a test suite for the chosen target class, then * renaming the old test suite is one of the options the user can choose * //from w ww . j av a2 s . c om * @param suite * @param packageName * @param suitePath */ public void renameSuite(final IResource suite, String packageName, String suitePath) { System.out.println("Renaming " + suitePath + " in package " + packageName); IPackageFragment[] packages; try { packages = JavaCore.create(suite.getProject()).getPackageFragments(); System.out.println("Packages found: " + packages.length); for (IPackageFragment f : packages) { if ((f.getKind() == IPackageFragmentRoot.K_SOURCE) && (f.getElementName().equals(packageName))) { for (ICompilationUnit cu : f.getCompilationUnits()) { String cuName = cu.getElementName(); System.out.println("targetPath = " + suitePath); System.out.println("cuName = " + cuName); if (cuName.equals(suitePath)) { RefactoringContribution contribution = RefactoringCore .getRefactoringContribution(IJavaRefactorings.RENAME_COMPILATION_UNIT); RenameJavaElementDescriptor descriptor = (RenameJavaElementDescriptor) contribution .createDescriptor(); descriptor.setProject(cu.getResource().getProject().getName()); String newName = getNewName(cuName, f.getCompilationUnits()); System.out.println("New name for Test Suite: " + newName); descriptor.setNewName(newName); // new name for a Class descriptor.setJavaElement(cu); RefactoringStatus status = new RefactoringStatus(); try { Refactoring refactoring = descriptor.createRefactoring(status); IProgressMonitor monitor = new NullProgressMonitor(); refactoring.checkInitialConditions(monitor); refactoring.checkFinalConditions(monitor); Change change = refactoring.createChange(monitor); change.perform(monitor); } catch (CoreException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } } } } } catch (JavaModelException e1) { e1.printStackTrace(); } }
From source file:org.fusesource.ide.branding.wizards.NewCamelTestWizardPageOne.java
License:Open Source License
/** * Initialized the page with the current selection * // www . ja v a2 s . c o m * @param selection * The selection */ public void init(IStructuredSelection selection) { IJavaElement elem = getInitialJavaElement(selection); IJavaProject jproject = elem.getJavaProject(); IPackageFragmentRoot testRoot = null; if (selection != null && !selection.isEmpty()) { Object selectedElement = selection.getFirstElement(); IFile ifile = null; if (selectedElement instanceof IFile) { ifile = (IFile) selectedElement; } else if (selectedElement instanceof IAdaptable) { IAdaptable adaptable = (IAdaptable) selectedElement; ifile = (IFile) adaptable.getAdapter(IFile.class); } if (ifile != null) { setXmlFileUnderTest(ifile); } // now we determine the container for the test classes if (jproject != null && jproject.exists()) { try { IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) { if (roots[i].getPath().toFile().getPath() .contains(String.format("src%stest%sjava", File.separator, File.separator))) { testRoot = roots[i]; break; } else if (roots[i].getPath().toFile().getPath() .contains(String.format("src%stest%sscala", File.separator, File.separator))) { testRoot = roots[i]; // we will prefer the src/test/java folder, so we don't break here and search for it } } } } catch (Exception ex) { Activator.getLogger().error(ex); } } } if (elem != null) { initContainerPage(elem); // if we found a suitable test class container then we set it here if (testRoot != null) { // set the container correctly setPackageFragmentRoot(testRoot, true); } IJavaProject project = elem.getJavaProject(); resourceContainer = project.getProject(); // evaluate the enclosing type IPackageFragment pack = (IPackageFragment) elem.getAncestor(IJavaElement.PACKAGE_FRAGMENT); if (pack != null) { setPackageFragment(pack, true); } else { File testFolderFile = project.getProject().getParent().getRawLocation() .append(getPackageFragmentRoot().getPath().makeRelative()).toFile(); File f = getBasePackage(testFolderFile); if (f != null && testRoot != null) { IPath p = new Path(f.getPath()); p = p.makeRelativeTo(project.getProject().getParent().getRawLocation() .append(getPackageFragmentRoot().getPath().makeRelative())); String name = ""; StringTokenizer strTok = new StringTokenizer(p.toOSString(), File.separator); while (strTok.hasMoreTokens()) { String tok = strTok.nextToken(); if (name.trim().length() > 0) { name += "."; } name += tok; } try { IPackageFragment pf = testRoot.createPackageFragment(name, true, new NullProgressMonitor()); setPackageFragment(pf, true); } catch (Exception ex) { Activator.getLogger().error(ex); } } } if (fXmlFileUnderTest == null) { try { // if we have no file selected yet, lets see if there's a // single one available List<IFile> files = ResourceModelUtils.filter(resourceContainer, new org.fusesource.ide.foundation.core.util.Filter<IFile>() { @Override public boolean matches(IFile file) { if (Objects.equal(file.getFileExtension(), "xml")) { return camelXmlMatcher.matches(file); } return false; } }); if (files.size() == 1) { setXmlFileUnderTest(files.get(0)); } } catch (Exception e) { Activator.getLogger().error("Failed to search for Camel XML files: " + e, e); } } } setJUnit4(true, true); updateStatus(getStatusList()); }
From source file:org.fusesource.ide.foundation.core.util.CamelUtils.java
License:Open Source License
/** * Fetch the list of files in the project that match the camel content type. * This method looks at only the source folders if the project is a Java project. * @param project//from ww w . j a v a2 s .c o m * @return list of camel files with content-type org.fusesource.ide.camel.editor.camelContentType * @throws CoreException */ public static List<IFile> getFilesWithCamelContentType(IProject project) throws CoreException { final List<IFile> files = new ArrayList<IFile>(); if (project.hasNature(JavaCore.NATURE_ID)) { //limit the search to source folders IJavaProject javaProject = JavaCore.create(project); if (javaProject != null) { for (IPackageFragmentRoot ifr : javaProject.getAllPackageFragmentRoots()) { if (ifr.getKind() == IPackageFragmentRoot.K_SOURCE) { files.addAll(getFilesWithCamelContentTypeInResource(ifr.getCorrespondingResource())); } } } } if (project.hasNature(FacetedProjectNature.NATURE_ID)) { // TODO: search in deployed resources } if (files.isEmpty()) {// or should we throw an error? files.addAll(getFilesWithCamelContentTypeInResource(project)); } return files; }
From source file:org.fusesource.ide.jvmmonitor.internal.ui.properties.cpu.actions.AddPackageDialog.java
License:Open Source License
/** * Adds the package./* w w w . j av a 2 s . co m*/ * * @param packageElements * The package elements into which package is added * @param element * The element which contains package element to be added * @throws JavaModelException */ private void addPackage(Set<String> packageElements, IJavaElement element) throws JavaModelException { // java source folder if (element instanceof IPackageFragmentRoot) { int kind = ((IPackageFragmentRoot) element).getKind(); if (kind == IPackageFragmentRoot.K_SOURCE) { IJavaElement[] children = ((IPackageFragmentRoot) element).getChildren(); for (IJavaElement child : children) { addPackage(packageElements, child); } } } // java package if (element instanceof IPackageFragment) { IJavaElement[] children = ((IPackageFragment) element).getChildren(); for (IJavaElement child : children) { if (IJavaElement.COMPILATION_UNIT == child.getElementType()) { packageElements.add(element.getElementName()); break; } } } }
From source file:org.grails.ide.eclipse.refactoring.util.RefactoringUtils.java
License:Open Source License
/** * Creates a default 'search scope' to search for references that need updating in a Grails project. The default scope includes all * source folders in the Grails project that actually 'belong' to the project (i.e. all source folders, but excluding * the linked plugin source folders.//from ww w .j av a 2s .c om * * @throws JavaModelException */ public static IJavaSearchScope getSearchScope(IJavaProject javaProject) throws JavaModelException { IPackageFragmentRoot[] roots = javaProject.getPackageFragmentRoots(); List<IPackageFragmentRoot> srcFolders = new ArrayList<IPackageFragmentRoot>(); for (IPackageFragmentRoot root : roots) { if (root.getKind() == IPackageFragmentRoot.K_SOURCE) { if (!GrailsResourceUtil.isGrailsDependencyPackageFragmentRoot(root)) { srcFolders.add(root); // System.out.println(root.getPath()); } } } return SearchEngine.createJavaSearchScope(srcFolders.toArray(new IJavaElement[srcFolders.size()])); }
From source file:org.grails.ide.eclipse.ui.contentassist.util.BeansJavaCompletionUtils.java
License:Open Source License
private static IPackageFragment getPackageFragment(IJavaProject project, String prefix) throws JavaModelException { int dot = prefix.lastIndexOf('.'); if (dot > -1) { String packageName = prefix.substring(0, dot); for (IPackageFragmentRoot root : project.getPackageFragmentRoots()) { IPackageFragment p = root.getPackageFragment(packageName); if (p != null && p.exists()) { return p; }/* w ww . java2 s .c o m*/ } IPackageFragment[] packages = project.getPackageFragments(); for (IPackageFragment p : packages) { if (p.getElementName().equals(packageName)) { return p; } } } else { for (IPackageFragmentRoot p : project.getAllPackageFragmentRoots()) { if (p.getKind() == IPackageFragmentRoot.K_SOURCE) { return p.getPackageFragment(""); } } } return project.getPackageFragments()[0]; }