List of usage examples for org.eclipse.jdt.core IJavaProject getPackageFragmentRoot
IPackageFragmentRoot getPackageFragmentRoot(IResource resource);
From source file:org.eclipse.wb.tests.designer.core.model.util.FactoryCreateActionTest.java
License:Open Source License
/** * No parameters, use same class.// w ww . j a v a 2 s .co m */ public void test_generate_sameFactoryClass() throws Exception { // parse ContainerInfo panel = parseContainer("public class Test extends JPanel {", " public Test() {", " JButton button = new JButton('text');", " button.setSelected(true);", " button.setAutoscrolls(true);", " add(button);", " }", "}"); ComponentInfo button = panel.getChildrenComponents().get(0); // do generate { action = new FactoryCreateAction(button); IJavaProject javaProject = m_testProject.getJavaProject(); IProject project = m_testProject.getProject(); IPackageFragmentRoot srcFolder = javaProject.getPackageFragmentRoot(project.getFolder("src")); IPackageFragment testPackage = srcFolder.getPackageFragment("test"); ReflectionUtils.setField(action, "m_sourceFolder", srcFolder); ReflectionUtils.setField(action, "m_package", testPackage); ReflectionUtils.setField(action, "m_className", "Test"); ReflectionUtils.setField(action, "m_methodName", "createButton"); // configure creation/invocations { String errorMessage; errorMessage = generate_configureInvocations(button, new int[] {}, new String[] {}, new int[][] {}); assertNull(errorMessage); } // generate factory ReflectionUtils.invokeMethod2(action, "generate", boolean.class, true); } m_getSource_ignoreSpacesCheck = true; assertEditor("public class Test extends JPanel {", " public Test() {", " JButton button = createButton();", " button.setSelected(true);", " button.setAutoscrolls(true);", " add(button);", " }", " /**", " * @wbp.factory", " */", " public static JButton createButton() {", " JButton button = new JButton('text');", " return button;", " }", "}"); }
From source file:org.eclipse.wb.tests.designer.core.model.util.FactoryCreateActionTest.java
License:Open Source License
/** * Configures {@link #action} with default package/class/method. *//* ww w . j av a 2s.co m*/ private void generate_configureDefaultTarget() throws Exception { IJavaProject javaProject = m_testProject.getJavaProject(); IProject project = m_testProject.getProject(); IPackageFragmentRoot srcFolder = javaProject.getPackageFragmentRoot(project.getFolder("src")); IPackageFragment testPackage = srcFolder.getPackageFragment("test"); ReflectionUtils.setField(action, "m_sourceFolder", srcFolder); ReflectionUtils.setField(action, "m_package", testPackage); ReflectionUtils.setField(action, "m_className", "StaticFactory"); ReflectionUtils.setField(action, "m_methodName", "createComponent"); }
From source file:org.eclipse.xtext.ui.containers.JavaProjectsStateHelper.java
License:Open Source License
protected IPackageFragmentRoot getJarWithEntry(URI uri) { Iterable<Pair<IStorage, IProject>> storages = getStorages(uri); IPackageFragmentRoot result = null;/*from w w w .jav a 2 s . c o m*/ for (Pair<IStorage, IProject> storage2Project : storages) { IStorage storage = storage2Project.getFirst(); if (storage instanceof IJarEntryResource) { IPackageFragmentRoot fragmentRoot = ((IJarEntryResource) storage).getPackageFragmentRoot(); if (fragmentRoot != null) { // IPackageFragmentRoot has some unexpected caching - it may return a different project // thus we use the one that was used to record the IPackageFragmentRoot IProject actualProject = storage2Project.getSecond(); IJavaProject javaProject = JavaCore.create(actualProject); if (!javaProject.exists()) { javaProject = fragmentRoot.getJavaProject(); } if (isAccessibleXtextProject(javaProject.getProject())) { // if both projects are the same - fine if (javaProject.equals(fragmentRoot.getJavaProject())) return fragmentRoot; // otherwise re-obtain the fragment root from the real project if (fragmentRoot.isExternal()) { IPackageFragmentRoot actualRoot = javaProject .getPackageFragmentRoot(fragmentRoot.getPath().toString()); if (actualProject.exists()) { return actualRoot; } } else { IPackageFragmentRoot actualRoot = javaProject .getPackageFragmentRoot(fragmentRoot.getResource()); if (actualRoot.exists()) { return actualRoot; } } result = fragmentRoot; } if (result == null) result = fragmentRoot; } } } return result; }
From source file:org.eclipse.xtext.ui.tests.core.resource.Storage2UriMapperJdtImplTest.java
License:Open Source License
@Flaky @Test// ww w. jav a 2s .c o m public void testBug463258_01() throws Exception { IJavaProject project = createJavaProject("foo"); IFile file = project.getProject().getFile("foo.jar"); file.create(jarInputStream(new TextFile("foo/bar.notindexed", "//empty")), true, monitor()); addJarToClasspath(project, file); Storage2UriMapperJavaImpl impl = getStorage2UriMapper(); IPackageFragmentRoot root = project.getPackageFragmentRoot(file); IPackageFragment foo = root.getPackageFragment("foo"); JarEntryFile fileInJar = new JarEntryFile("bar.notindexed"); fileInJar.setParent(foo); URI uri = impl.getUri(fileInJar); assertEquals("archive:platform:/resource/foo/foo.jar!/foo/bar.notindexed", uri.toString()); InputStream stream = new ResourceSetImpl().getURIConverter().createInputStream(uri); byte[] bytes = ByteStreams.toByteArray(stream); assertEquals("//empty", new String(bytes)); }
From source file:org.eclipse.xtext.ui.tests.core.resource.Storage2UriMapperJdtImplTest.java
License:Open Source License
@Flaky @Test/*from w w w. j a va 2 s . c o m*/ public void testBug463258_02() throws Exception { IJavaProject project = createJavaProject("foo"); IFile file = project.getProject().getFile("foo.jar"); file.create(jarInputStream(new TextFile("do/not", "care")), true, monitor()); addJarToClasspath(project, file); Storage2UriMapperJavaImpl impl = getStorage2UriMapper(); IPackageFragmentRoot root = project.getPackageFragmentRoot(file); IPackageFragment foo = root.getPackageFragment("unknown"); JarEntryFile fileInJar = new JarEntryFile("doesNotExist.notindexed"); fileInJar.setParent(foo); URI uri = impl.getUri(fileInJar); assertEquals("archive:platform:/resource/foo/foo.jar!/unknown/doesNotExist.notindexed", uri.toString()); }
From source file:org.eclipse.xtext.ui.tests.core.resource.Storage2UriMapperJdtImplTest.java
License:Open Source License
@Flaky @Test//ww w . j a v a 2 s . c o m public void testBug463258_03a() throws Exception { IJavaProject project = createJavaProject("foo"); IFile file = project.getProject().getFile("foo.jar"); file.create(jarInputStream(new TextFile("foo/bar.notindexed", "//empty")), true, monitor()); addJarToClasspath(project, file); Storage2UriMapperJavaImpl impl = getStorage2UriMapper(); IPackageFragmentRoot root = project.getPackageFragmentRoot(file); IPackageFragment foo = root.getPackageFragment("foo"); JarEntryFile fileInJar = new JarEntryFile("bar.notindexed"); fileInJar.setParent(foo); File jarFile = file.getRawLocation().toFile(); assertTrue("exists", jarFile.exists()); assertTrue("delete", jarFile.delete()); URI uri = impl.getUri(fileInJar); assertEquals("archive:platform:/resource/foo/foo.jar!/foo/bar.notindexed", uri.toString()); }
From source file:org.eclipse.xtext.ui.tests.core.resource.Storage2UriMapperJdtImplTest.java
License:Open Source License
@Flaky @Test//from ww w. ja v a2 s. c o m public void testBug463258_04() throws Exception { IFolder externalFolder = createExternalFolder("externalFolder"); IJavaProject project = createJavaProject("foo"); addExternalFolderToClasspath(project, externalFolder); Storage2UriMapperJavaImpl impl = getStorage2UriMapper(); IPackageFragmentRoot root = project.getPackageFragmentRoot(externalFolder); IPackageFragment foo = root.getPackageFragment("foo"); NonJavaResource fileInFolder = new NonJavaResource(foo, externalFolder.getFile("foo/does.notexist")); externalFolder.delete(true, null); URI uri = impl.getUri(fileInFolder); assertNull(uri); }
From source file:org.eclipse.xtext.ui.tests.core.resource.Storage2UriMapperJdtImplTest.java
License:Open Source License
@Test public void testBug463258_05() throws Exception { IJavaProject project = createJavaProject("foo"); final Storage2UriMapperJavaImpl impl = getStorage2UriMapper(); IPackageFragmentRoot root = project.getPackageFragmentRoot("does/not/exist.jar"); IPackageFragment foo = root.getPackageFragment("foo"); final JarEntryFile fileInJar = new JarEntryFile("bar.notindexed"); fileInJar.setParent(foo);//from w ww. java 2 s . c o m LoggingTester.captureLogging(Level.ERROR, Storage2UriMapperJavaImpl.class, new Runnable() { @Override public void run() { URI uri = impl.getUri(fileInJar); assertNull(uri); } }).assertNoLogEntries(); }
From source file:org.eclipse.xtext.ui.tests.core.resource.Storage2UriMapperJdtImplTest.java
License:Open Source License
@Flaky @Test/*w w w .java 2 s.c o m*/ public void testResourceInJar() throws Exception { IJavaProject project = createJavaProject("foo"); IFile file = project.getProject().getFile("foo.jar"); file.create(jarInputStream(new TextFile("foo/bar.indexed", "//empty"), new TextFile("foo/bar.notIndexed", "//empty")), true, monitor()); addJarToClasspath(project, file); Storage2UriMapperJavaImpl impl = getStorage2UriMapper(); IPackageFragmentRoot root = project.getPackageFragmentRoot(file); Map<URI, IStorage> rootData = impl.getAllEntries(root); assertEquals(1, rootData.size()); assertEquals("archive:platform:/resource/foo/foo.jar!/foo/bar.indexed", rootData.keySet().iterator().next().toString()); file.setContents(jarInputStream(new TextFile("foo/bar.notindexed", "//empty"), new TextFile("foo/bar.notIndexed", "//empty")), IResource.FORCE, monitor()); rootData = impl.getAllEntries(root); assertTrue(rootData.isEmpty()); }
From source file:org.eclipse.xtext.ui.tests.core.resource.Storage2UriMapperJdtImplTest.java
License:Open Source License
@Flaky @Test//from www . j ava2 s. co m public void testJaredBundle() throws Exception { IJavaProject project = createJavaProject("foo"); IFile file = project.getProject().getFile("foo.jar"); file.create(jarInputStream(new TextFile("foo/bar.indexed", "//empty"), new TextFile("foo/bar.notIndexed", "//empty"), new TextFile("META-INF/MANIFEST.MF", "Manifest-Version: 1.0\nBundle-SymbolicName: hubba.bubba\n")), true, monitor()); addJarToClasspath(project, file); Storage2UriMapperJavaImpl impl = getStorage2UriMapper(); IPackageFragmentRoot root = project.getPackageFragmentRoot(file); Map<URI, IStorage> rootData = impl.getAllEntries(root); assertEquals(1, rootData.size()); assertEquals("platform:/resource/hubba.bubba/foo/bar.indexed", rootData.keySet().iterator().next().toString()); // let's change the bundle name file.setContents( jarInputStream(new TextFile("foo/bar.indexed", "//empty"), new TextFile("foo/bar.notIndexed", "//empty"), new TextFile("META-INF/MANIFEST.MF", "Manifest-Version: 1.0\nBundle-SymbolicName: other.bundle.name;singleton:=true\n")), IResource.FORCE, monitor()); rootData = impl.getAllEntries(root); assertEquals(1, rootData.size()); assertEquals("platform:/resource/other.bundle.name/foo/bar.indexed", rootData.keySet().iterator().next().toString()); }