List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot getPackageFragment
IPackageFragment getPackageFragment(String packageName);
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; }//from w w w . j a v a 2 s.c om } 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]; }
From source file:org.gw4e.eclipse.facade.JDTManager.java
License:Open Source License
public static IPackageFragment getPackageFragment(IFile file) throws JavaModelException { IPackageFragmentRoot root1 = JDTManager.findPackageFragmentRoot(file.getProject(), file.getFullPath()); IPath path = file.getParent().getFullPath().makeRelativeTo(root1.getPath()); IPackageFragment pf = root1.getPackageFragment(path.toString().replace("/", ".")); return pf;/*ww w . j a va2s. c om*/ }
From source file:org.gw4e.eclipse.facade.ResourceManager.java
License:Open Source License
/** * Return package fragment of the passed resource * //from w w w.ja v a 2 s .c om * @param project * @param path * @return * @throws JavaModelException */ public static IPackageFragmentRoot getPackageFragmentRoot(IProject project, IPackageFragment pkg) throws JavaModelException { IJavaProject jproject = JavaCore.create(project); IPackageFragmentRoot[] roots = jproject.getPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { IPackageFragmentRoot root = roots[i]; IPackageFragment pf = root.getPackageFragment(pkg.getElementName()); if (pf.equals(pkg)) return root; } return null; }
From source file:org.gw4e.eclipse.facade.ResourceManager.java
License:Open Source License
/** * Return package fragment of the passed resource * /*from w ww .j av a 2 s . c o m*/ * @param project * @param path * @return * @throws CoreException */ public static IPackageFragment getPackageFragment(IProject project, IPath path) throws CoreException { IFolder folder = ResourceManager.ensureFolder(project, path.toString(), new NullProgressMonitor()); IJavaElement element = JavaCore.create(folder); if (element instanceof IPackageFragment) { return (IPackageFragment) element; } if (element instanceof IPackageFragmentRoot) { IPackageFragmentRoot root = (IPackageFragmentRoot) element; element = root.getPackageFragment(""); return (IPackageFragment) element; } return null; }
From source file:org.gw4e.eclipse.test.fwk.ProjectHelper.java
License:Open Source License
public static IFile createDummyClass(IJavaProject project) throws CoreException, IOException { String clazz = "import org.graphwalker.core.machine.ExecutionContext ; public class Dummy extends org.gw4e.core.machine.ExecutionContext {}"; IFolder folder = project.getProject().getFolder("src/test/java"); IPackageFragmentRoot srcFolder = project.getPackageFragmentRoot(folder); IPackageFragment pkg = srcFolder.getPackageFragment(""); ICompilationUnit cu = pkg.createCompilationUnit("Dummy.java", clazz, false, new NullProgressMonitor()); cu.save(new NullProgressMonitor(), true); return (IFile) cu.getResource(); }
From source file:org.gw4e.eclipse.test.fwk.ProjectHelper.java
License:Open Source License
public static IFile createDummyClassWitherror(IJavaProject project) throws CoreException, IOException { String clazz = "import org.graphwalker.core.machine.ExecutionContext ; public class Dummy1 extends org.gw4e.core.machine.ExecutionContext {}"; IFolder folder = project.getProject().getFolder("src/test/java"); IPackageFragmentRoot srcFolder = project.getPackageFragmentRoot(folder); IPackageFragment pkg = srcFolder.getPackageFragment(""); ICompilationUnit cu = pkg.createCompilationUnit("Dummy.java", clazz, false, new NullProgressMonitor()); cu.save(new NullProgressMonitor(), true); return (IFile) cu.getResource(); }
From source file:org.jboss.ide.eclipse.as.ui.mbeans.wizards.pages.NewSessionBeanWizardPage.java
License:Open Source License
protected IPackageFragment getPackageFragment(String packageName) throws CoreException { // This was copied over from NewTypeWizardPage.packageChanged, and made more generic so we could use it for multiple package inputs StatusInfo status = new StatusInfo(); if (packageName.length() > 0) { IStatus val = JavaConventions.validatePackageName(packageName); if (val.getSeverity() == IStatus.ERROR) { status.setError(NewWizardMessages.bind(NewWizardMessages.NewTypeWizardPage_error_InvalidPackageName, val.getMessage())); throw new CoreException(status); } else if (val.getSeverity() == IStatus.WARNING) { status.setWarning(NewWizardMessages.bind( NewWizardMessages.NewTypeWizardPage_warning_DiscouragedPackageName, val.getMessage())); // continue }/*from w w w. j a v a 2 s. c om*/ } else { status.setWarning(NewWizardMessages.NewTypeWizardPage_warning_DefaultPackageDiscouraged); } IPackageFragmentRoot root = getPackageFragmentRoot(); if (root != null) { if (root.getJavaProject().exists() && packageName.length() > 0) { try { IPath rootPath = root.getPath(); IPath outputPath = root.getJavaProject().getOutputLocation(); if (rootPath.isPrefixOf(outputPath) && !rootPath.equals(outputPath)) { // if the bin folder is inside of our root, don't allow to name a package // like the bin folder IPath packagePath = rootPath.append(packageName.replace('.', '/')); if (outputPath.isPrefixOf(packagePath)) { status.setError(NewWizardMessages.NewTypeWizardPage_error_ClashOutputLocation); throw new CoreException(status); } } } catch (JavaModelException e) { JavaPlugin.log(e); // let pass } } return root.getPackageFragment(packageName); } else { status.setError(""); //$NON-NLS-1$ } throw new CoreException(status); }
From source file:org.jboss.tools.cdi.seam.config.ui.contentassist.SeamConfigXmlCompletionProposalComputer.java
License:Open Source License
public static Map<String, IMember> findTypeNamesByPackage(IJavaProject javaProject, String packageName, boolean annotationsOnly, boolean classesOnly) throws JavaModelException { Map<String, IMember> result = new HashMap<String, IMember>(); if (PACKAGE_EE.equals(packageName)) { for (String name : Util.EE_TYPES.keySet()) { String cls = Util.EE_TYPES.get(name); IType t = EclipseJavaUtil.findType(javaProject, cls); if (accept(t, annotationsOnly, classesOnly)) result.put(name, t);/*from w ww. jav a 2s. c o m*/ } for (String name : Util.EE_TYPES_30.keySet()) { String cls = Util.EE_TYPES_30.get(name); IType t = EclipseJavaUtil.findType(javaProject, cls); if (accept(t, annotationsOnly, classesOnly)) result.put(name, t); } } else if (javaProject != null) { IPackageFragmentRoot[] rs = javaProject.getAllPackageFragmentRoots(); for (IPackageFragmentRoot r : rs) { IPackageFragment pkg = r.getPackageFragment(packageName); if (pkg != null && pkg.exists()) { ICompilationUnit[] units = pkg.getCompilationUnits(); for (ICompilationUnit u : units) { IType[] ts = u.getTypes(); for (IType t : ts) if (accept(t, annotationsOnly, classesOnly)) result.put(t.getElementName(), t); } IClassFile[] cs = pkg.getClassFiles(); for (IClassFile cls : cs) { if (accept(cls.getType(), annotationsOnly, classesOnly)) result.put(cls.getType().getElementName(), cls.getType()); } } } } return result; }
From source file:org.jboss.tools.common.java.generation.JavaBeanGenerator.java
License:Open Source License
private void doGenerateJava(IJavaProject javaproject, String filepath, Properties p) throws CoreException { IPackageFragmentRoot root = getJavaProjectSrcRoot(javaproject); String pkgname = p.getProperty(PARAM_PACKAGENAME); IPackageFragment pack = root.getPackageFragment(pkgname); if (!pack.exists()) { pack = root.createPackageFragment(pkgname, true, null); }//from w w w . j av a2 s . com String shortname = p.getProperty(PARAM_SHORTNAME); String lineDelimiter = System.getProperty("line.separator", "\n"); //$NON-NLS-1$ //$NON-NLS-2$ ICompilationUnit parentCU = pack.createCompilationUnit(shortname + ".java", "", false, null); //$NON-NLS-1$ //$NON-NLS-2$ ICompilationUnit createdWorkingCopy = (ICompilationUnit) parentCU.getWorkingCopy(null); /// imports= new ImportsStructure(createdWorkingCopy, prefOrder, threshold, false); /// imports.addImport(pack.getElementName(), getTypeName()); String typeContent = constructTypeStub(p, lineDelimiter); String cuContent = buildClassContent(parentCU, shortname, typeContent, lineDelimiter); createdWorkingCopy.getBuffer().setContents(cuContent); IType createdType = createdWorkingCopy.getType(shortname); /// imports.create(false, new SubProgressMonitor(monitor, 1)); ICompilationUnit cu = createdType.getCompilationUnit(); synchronized (cu) { cu.reconcile(ICompilationUnit.NO_AST, true, null, null); } /// imports.create(false, new SubProgressMonitor(monitor, 1)); /// synchronized(cu) { /// cu.reconcile(); /// } ISourceRange range = createdType.getSourceRange(); IBuffer buf = cu.getBuffer(); String originalContent = buf.getText(range.getOffset(), range.getLength()); String formattedContent = codeFormat2(CodeFormatter.K_CLASS_BODY_DECLARATIONS, originalContent, 0, lineDelimiter, cu.getJavaProject()); buf.replace(range.getOffset(), range.getLength(), formattedContent); cu.commitWorkingCopy(false, null); }
From source file:org.jboss.tools.common.model.ui.editor.ModelObjectStorageEditorInput.java
License:Open Source License
IJarEntryResource findJarEntryFile() { XModelObject o = object;/*from ww w .java 2 s .c o m*/ JarEntryFile f = null; JarEntryResource current = null; String packageName = ""; List<String> parts = new ArrayList<String>(); List<XModelObject> os = new ArrayList<XModelObject>(); while (o != null && o.getFileType() != XModelObject.SYSTEM) { String part = o.getFileType() == XModelObject.FILE ? FileAnyImpl.toFileName(o) : o.getFileType() == XModelObject.FOLDER ? o.getAttributeValue(XModelObjectConstants.ATTR_NAME) : null; if (part != null) { parts.add(0, part); os.add(0, o); if (f == null) { f = new JarEntryFile(part) { public InputStream getContents() throws CoreException { return storage.getContents(); } }; current = f; } else { if (packageName.length() > 0) { packageName = part + "." + packageName; } else { packageName = part; } JarEntryDirectory d = new JarEntryDirectory(part); current.setParent(d); current = d; } } o = o.getParent(); } // if(!(o instanceof JarSystemImpl)) return null; String file = Paths.expand(o.get(XModelObjectConstants.ATTR_NAME_LOCATION), o.getModel().getProperties()); IProject p = EclipseResourceUtil.getProject(o); IJavaProject jp = EclipseResourceUtil.getJavaProject(p); if (jp == null) return null; IPackageFragmentRoot root = null; try { IPackageFragmentRoot[] rs = jp.getAllPackageFragmentRoots(); for (IPackageFragmentRoot r : rs) { if (r.getResource() != null && r.getResource().exists() && r.getResource().getLocation().toString().equals(file)) { root = r; } else if (r.getPath() != null && r.getPath().toString().equals(file)) { root = r; } } } catch (CoreException e) { ModelUIPlugin.getDefault().logError(e); } if (root == null) { root = jp.getPackageFragmentRoot(file); } if (root == null) { return null; } if (current != null && !"META-INF".equalsIgnoreCase(current.getName()) && packageName.length() > 0) { IPackageFragment pf = root.getPackageFragment(packageName); f.setParent(pf); } else { current.setParent(root); if (!(o instanceof JarSystemImpl)) { Object q = root; NonJavaResource nj = null; for (int i = 0; i < parts.size(); i++) { IResource ri = (IResource) os.get(i).getAdapter(IResource.class); if (ri == null) { return f; } nj = new NonJavaResource(q, ri); q = nj; } if (nj != null) { return nj; } } } return f; }