List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot open
public void open(IProgressMonitor progress) throws JavaModelException;
From source file:at.bestsolution.javafx.ide.jdt.internal.JavaClassResourceService.java
License:Open Source License
IResource handleElementCreation(IContainer container, String packageName, String className) { // FIXME This is temporary if (!container.getProject().isOpen()) { try {//from w ww. j a v a2s .co m container.getProject().open(new NullProgressMonitor()); } catch (CoreException e) { // TODO Auto-generated catch block e.printStackTrace(); } } IProject pr = container.getProject(); IJavaElement jElement = getInitialJavaElement(container); IPackageFragmentRoot jRoot = getFragmentRoot(jElement); try { IJavaProject jProject = JavaCore.create(pr); jProject.open(new NullProgressMonitor()); jRoot.open(new NullProgressMonitor()); IPackageFragment fragment = jRoot.getPackageFragment(packageName); if (!fragment.exists()) { ((IFolder) fragment.getResource()).create(true, true, null); } ICompilationUnit u = fragment.getCompilationUnit(className + ".java"); IFile f = (IFile) u.getResource(); ByteArrayInputStream in = new ByteArrayInputStream( new String("public class " + className + " {\n}").getBytes()); f.create(in, IFile.FORCE | IFile.KEEP_HISTORY, new NullProgressMonitor()); in.close(); // pr.build(IncrementalProjectBuilder.FULL_BUILD, new // NullProgressMonitor()); return f; } catch (JavaModelException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (CoreException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.err.println(jRoot); return null; }
From source file:edu.brown.cs.bubbles.bedrock.BedrockUtil.java
License:Open Source License
private static void outputJavaElementImpl(IJavaElement elt, Set<String> files, boolean children, IvyXmlWriter xw) {//from w w w .ja v a 2 s . c o m if (elt == null) return; String close = null; switch (elt.getElementType()) { case IJavaElement.CLASS_FILE: return; case IJavaElement.PACKAGE_FRAGMENT: IOpenable opn = (IOpenable) elt; if (!opn.isOpen()) { try { opn.open(null); } catch (JavaModelException e) { BedrockPlugin.logE("Package framgent " + elt.getElementName() + " not open"); return; } } try { outputNameDetails((IPackageFragment) elt, xw); } catch (JavaModelException e) { } break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: IPackageFragmentRoot pfr = (IPackageFragmentRoot) elt; try { if (!pfr.isOpen() && pfr.getKind() == IPackageFragmentRoot.K_SOURCE) { pfr.open(null); } } catch (JavaModelException e) { return; } outputNameDetails(pfr, xw); break; case IJavaElement.JAVA_PROJECT: IJavaProject ijp = (IJavaProject) elt; outputNameDetails(ijp, xw); break; case IJavaElement.JAVA_MODEL: case IJavaElement.IMPORT_CONTAINER: case IJavaElement.IMPORT_DECLARATION: case IJavaElement.TYPE_PARAMETER: default: break; case IJavaElement.COMPILATION_UNIT: IProject ip = elt.getJavaProject().getProject(); File f = getFileForPath(elt.getPath(), ip); if (files != null && !files.contains(f.getPath()) && !files.contains(f.getAbsolutePath())) { return; } xw.begin("FILE"); xw.textElement("PATH", f.getAbsolutePath()); String root = getRootForPath(elt.getPath(), ip); if (root != null) xw.textElement("PATHROOT", root); close = "FILE"; break; case IJavaElement.TYPE: try { outputNameDetails((IType) elt, xw); } catch (JavaModelException e) { } break; case IJavaElement.FIELD: try { outputNameDetails((IField) elt, xw); } catch (JavaModelException e) { } break; case IJavaElement.METHOD: try { outputNameDetails((IMethod) elt, xw); } catch (JavaModelException e) { } break; case IJavaElement.INITIALIZER: outputNameDetails((IInitializer) elt, xw); break; case IJavaElement.PACKAGE_DECLARATION: outputNameDetails((IPackageDeclaration) elt, xw); break; case IJavaElement.LOCAL_VARIABLE: outputNameDetails((ILocalVariable) elt, xw); break; } if (children && elt instanceof IParent) { try { for (IJavaElement c : ((IParent) elt).getChildren()) { outputJavaElementImpl(c, files, children, xw); } } catch (JavaModelException e) { } } if (close != null) xw.end(close); }
From source file:org.codehaus.groovy.eclipse.dsl.tests.BuiltInDSLInferencingTests.java
License:Open Source License
public void testSanity() throws Exception { IJavaProject javaProject = JavaCore.create(project); assertTrue("Should have DSL support classpath container", GroovyRuntime.hasClasspathContainer(javaProject, GroovyDSLCoreActivator.CLASSPATH_CONTAINER_ID)); IClasspathContainer container = JavaCore .getClasspathContainer(GroovyDSLCoreActivator.CLASSPATH_CONTAINER_ID, javaProject); IClasspathEntry[] cpes = container.getClasspathEntries(); assertEquals("Wrong number of classpath entries found: " + Arrays.toString(cpes), 2, cpes.length); IClasspathEntry pluginEntry = null;/* w w w . jav a 2 s .c om*/ IClasspathEntry[] entries = javaProject.getResolvedClasspath(true); for (IClasspathEntry entry : entries) { if (entry.getPath().toString().contains("plugin_dsld")) { pluginEntry = entry; } } IPackageFragmentRoot root = null; List<String> elements = new ArrayList<String>(); for (IJavaElement elt : javaProject.getChildren()) { elements.add(elt.getElementName()); if (elt.getElementName().contains("plugin_dsld")) { root = (IPackageFragmentRoot) elt; } } List<String> possibleFrags = new ArrayList<String>(); for (IPackageFragment frag : javaProject.getPackageFragments()) { if (frag.getElementName().equals("dsld")) { possibleFrags.add(frag.toString()); possibleFrags.add(" ["); for (IJavaElement child : frag.getChildren()) { possibleFrags.add(" " + child.getElementName()); } possibleFrags.add(" ]"); } } assertNotNull("Did not find the Plugin DSLD classpath entry. Exsting resolved roots:\n" + printList(elements) + "\nOther DSLD fragments:\n" + printList(possibleFrags), pluginEntry); assertNotNull("Plugin DSLD classpath entry should exist. Exsting resolved roots:\n" + printList(elements) + "\nOther DSLD fragments:\n" + printList(possibleFrags), root); assertTrue("Plugin DSLD classpath entry should exist", root.exists()); ExternalPackageFragmentRoot ext = (ExternalPackageFragmentRoot) root; ext.resource().refreshLocal(IResource.DEPTH_INFINITE, null); root.close(); root.open(null); IPackageFragment frag = root.getPackageFragment("dsld"); assertTrue("DSLD package fragment should exist", frag.exists()); }
From source file:org.eclipse.examples.slideshow.jdt.URLHandlingTests.java
License:Open Source License
@BeforeClass public static void setup() throws Exception { // TODO This doesn't work. Need to figure out what's missing. IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot(); IProject project = root.getProject("JavaProject"); project.create(null);//from www . j a va 2s . c o m project.open(null); IProjectDescription description = project.getDescription(); description.setNatureIds(new String[] { JavaCore.NATURE_ID }); project.setDescription(description, null); IJavaProject javaProject = JavaCore.create(project); IPackageFragmentRoot sourceFolder = javaProject.getPackageFragmentRoot(project); sourceFolder.open(null); IPackageFragment pack = sourceFolder.createPackageFragment("org.eclipse.test", false, null); pack.open(null); String contents = "package org.eclipse.test;\npublic class Junk {\npublic static void main(String[] args) {}}"; pack.createCompilationUnit("Junk.java", contents, false, null); project.build(IncrementalProjectBuilder.FULL_BUILD, null); // root.accept(new IResourceVisitor() { // // public boolean visit(IResource resource) throws CoreException { // System.out.println(resource); // return true; // } // // }); }
From source file:org.eclipse.jst.jsp.ui.tests.contentassist.BeanInfoProviderTest.java
License:Open Source License
private void openPath(IJavaProject javaProj) { try {//from ww w . jav a2 s.c o m if (javaProj.exists() && !javaProj.isOpen()) { javaProj.open(null); } IPackageFragmentRoot root = javaProj.getPackageFragmentRoot(fResource.getProject()); if (!root.isOpen()) root.open(null); IPackageFragment frag = getPackageFragment(root, "BEAN_TESTS"); openAll(frag); frag = getPackageFragment(root, "org"); if (frag != null && !frag.isOpen()) openAll(frag); frag = getPackageFragment(root, "org.eclipse"); if (frag != null && !frag.isOpen()) openAll(frag); frag = getPackageFragment(root, "org.eclipse.jst"); if (frag != null && !frag.isOpen()) openAll(frag); frag = getPackageFragment(root, "org.eclipse.jst.jsp"); if (frag != null && !frag.isOpen()) openAll(frag); frag = getPackageFragment(root, "org.eclipse.jst.jsp.ui"); if (frag != null && !frag.isOpen()) openAll(frag); frag = getPackageFragment(root, "org.eclipse.jst.jsp.ui.tests"); if (frag != null && !frag.isOpen()) openAll(frag); } catch (JavaModelException e) { e.printStackTrace(); } }
From source file:org.eclipse.xtend.shared.ui.core.builder.XtendXpandBuilder.java
License:Open Source License
protected void fullBuild(final IProgressMonitor monitor) throws CoreException { final IXtendXpandProject project = Activator.getExtXptModelManager() .findProject(getProject().getFullPath()); if (project != null) { getProject().accept(new XtendXpandDeltaVisitor(monitor)); final IJavaProject jp = JavaCore.create(getProject()); final IPackageFragmentRoot[] roots = jp.getPackageFragmentRoots(); final Set<String> extensions = new HashSet<String>(); final ResourceContributor[] contributors = Activator.getRegisteredResourceContributors(); for (final ResourceContributor resourceContributor : contributors) { extensions.add(resourceContributor.getFileExtension()); }//from w w w.java2 s. c o m for (final IPackageFragmentRoot root : roots) { if (root.isArchive()) { try { root.open(monitor); try { final ZipFile zip = ((JarPackageFragmentRoot) root).getJar(); final Enumeration<? extends ZipEntry> entries = zip.entries(); while (entries.hasMoreElements()) { final ZipEntry entry = entries.nextElement(); for (final String ext : extensions) { final String name = entry.getName(); if (name.endsWith(ext)) { final String fqn = name.substring(0, name.length() - ext.length() - 1) .replaceAll("/", "::"); final ResourceID resourceID = new ResourceID(fqn, ext); final IStorage findStorage = JDTUtil.loadFromJar(resourceID, root); project.findXtendXpandResource(findStorage); } } } } finally { root.close(); } } catch (CoreException ex) { XtendLog.logError(ex); } } } } else { XtendLog.logInfo("Couldn't create Xpand project for project " + getProject().getName()); } }
From source file:org.eclipse.xtend.typesystem.emf.ui.ProjectAnalyzer.java
License:Open Source License
private void loadMetamodelsForProject(final IJavaProject javaProject, final ResourceSet rs, final IProgressMonitor monitor) { try {//from ww w . j a v a 2 s .c o m final String ext = Messages.ProjectAnalyzer_2; if (!javaProject.exists()) return; for (final IPackageFragmentRoot root : javaProject.getPackageFragmentRoots()) { if (!root.isArchive()) { IResource rootResource = null; if (root instanceof ExternalPackageFragmentRoot) { rootResource = ((ExternalPackageFragmentRoot) root).resource(); } else { rootResource = root.getUnderlyingResource(); } if (rootResource != null) { try { // if (!rootResource.exists() || !rootResource.isAccessible()) rootResource.refreshLocal(IResource.DEPTH_INFINITE, monitor); rootResource.accept(new IResourceVisitor() { public boolean visit(final IResource resource) throws CoreException { if (resource instanceof IFile && ext.equals(((IFile) resource).getFileExtension())) { loadModelFromStorage(rs, (IFile) resource); } return true; } }); } catch (final CoreException e) { EmfToolsLog.logError(e); } } } else { // skip JRE jars if (((JarPackageFragmentRoot) root).getPath().toString().contains(Messages.ProjectAnalyzer_3)) { if (EmfToolsPlugin.trace) { System.out.println(Messages.ProjectAnalyzer_4 + ((JarPackageFragmentRoot) root).getPath().toString()); } continue; } root.open(monitor); try { final ZipFile zip = ((JarPackageFragmentRoot) root).getJar(); final Enumeration<? extends ZipEntry> entries = zip.entries(); while (entries.hasMoreElements()) { final ZipEntry entry = entries.nextElement(); final String name = entry.getName(); if (name.endsWith(ext)) { final String fqn = name.substring(0, name.length() - ext.length() - 1) .replaceAll(Messages.ProjectAnalyzer_5, Messages.ProjectAnalyzer_6); final ResourceID resourceID = new ResourceID(fqn, ext); final IStorage findStorage = JDTUtil.loadFromJar(resourceID, root); if (findStorage != null) { loadModelFromStorage(rs, findStorage); } } } } catch (final CoreException e) { EmfToolsLog.logError(e); } finally { root.close(); } } } } catch (final JavaModelException e) { EmfToolsLog.logError(e); } }