List of usage examples for org.eclipse.jdt.core IJavaElement exists
boolean exists();
From source file:org.eclipse.ajdt.core.tests.codeselect.AbstractITDAwareCodeSelectionTests.java
License:Open Source License
protected void validateCodeSelect(ICompilationUnit unit, IRegion region, String expectedSrcFile, String expectedSignature) throws Exception { IJavaElement[] result = unit.codeSelect(region.getOffset(), region.getLength()); assertEquals("Should have found exactly one hyperlink", 1, result.length); IJavaElement elt = result[0]; assertTrue("Java element " + elt.getHandleIdentifier() + " should exist", elt.exists()); String actualSrcFile = elt.getResource().getFullPath().toString(); assertTrue("Element found is in the wrong source file:\n" + " expected: " + expectedSrcFile + "\n" + " found: " + actualSrcFile, actualSrcFile.endsWith(expectedSrcFile)); assertEquals("Element found has wrong signature", expectedSignature, getSignature(elt)); }
From source file:org.eclipse.ajdt.core.tests.model.InpathRelationshipsTests.java
License:Open Source License
public void testInPathRelationshipsNonDefault() throws Exception { IFile file = target.getFile("src/snippet/AdvisesLinked.aj"); AJCompilationUnit unit = (AJCompilationUnit) AspectJCore.create(file); Set /*IType*/ targetTypes = gatherTargetTypesNonDefault(); Map relationships = model.getRelationshipsForFile(unit); assertEquals("Should have found 15 relationships in the compilation unit", 15, relationships.size()); for (Iterator allRelsIter = relationships.values().iterator(); allRelsIter.hasNext();) { List rels = (List) allRelsIter.next(); for (Iterator relsIter = rels.iterator(); relsIter.hasNext();) { IRelationship rel = (IRelationship) relsIter.next(); for (Iterator targetIter = rel.getTargets().iterator(); targetIter.hasNext();) { String targetHandle = (String) targetIter.next(); IJavaElement elt = model.programElementToJavaElement(targetHandle); assertTrue("Java element should exist: " + elt.getHandleIdentifier(), elt.exists()); targetTypes.remove(elt); }//w w w. j av a 2 s . c o m } } assertTrue("The following types should have been a target of an ITD:\n" + printTargetTypes(targetTypes), targetTypes.size() == 0); }
From source file:org.eclipse.ajdt.core.tests.model.InpathRelationshipsTests.java
License:Open Source License
public void testInPathRelationshipsDefault() throws Exception { IFile file = target.getFile("src/AdvisesLinkedDefault.aj"); AJCompilationUnit unit = (AJCompilationUnit) AspectJCore.create(file); Set /*IType*/ targetTypes = gatherTargetTypesDefault(); Map relationships = model.getRelationshipsForFile(unit); assertEquals("Should have found 15 relationships in the compilation unit", 15, relationships.size()); for (Iterator allRelsIter = relationships.values().iterator(); allRelsIter.hasNext();) { List rels = (List) allRelsIter.next(); for (Iterator relsIter = rels.iterator(); relsIter.hasNext();) { IRelationship rel = (IRelationship) relsIter.next(); for (Iterator targetIter = rel.getTargets().iterator(); targetIter.hasNext();) { String targetHandle = (String) targetIter.next(); IJavaElement elt = model.programElementToJavaElement(targetHandle); assertTrue("Java element should exist: " + elt.getHandleIdentifier(), elt.exists()); targetTypes.remove(elt); }//from ww w . ja v a 2 s. c om } } assertTrue("The following types should have been a target of an ITD:\n" + printTargetTypes(targetTypes), targetTypes.size() == 0); }
From source file:org.eclipse.ajdt.core.tests.model.MultipleProjectModelTests.java
License:Open Source License
private void roundTripCheck(IType otherType, IJavaElement orig) throws JavaModelException { assertTrue("Should exist: " + orig.getHandleIdentifier(), orig.exists()); assertEquals(otherType, orig.getParent()); assertTrue("" + orig + " should be a child of " + otherType, isAChildOf(otherType, orig)); IProgramElement ipe = model.javaElementToProgramElement(orig); assertNotSame(IHierarchy.NO_STRUCTURE, ipe); orig = model.programElementToJavaElement(ipe); assertTrue("Should exist: " + orig.getHandleIdentifier(), orig.exists()); assertEquals(otherType, orig.getParent()); assertTrue("" + orig + " should be a child of " + otherType, isAChildOf(otherType, orig)); }
From source file:org.eclipse.ajdt.core.tests.problemfinding.ITITProblemFinderTests.java
License:Apache License
protected void checkModel() throws JavaModelException { AJProjectModelFacade model = AJProjectModelFactory.getInstance().getModelForJavaElement(proj); IType cityType = proj.findType("p.City"); List<IJavaElement> rels = model.getRelationshipsForElement(cityType, AJRelationshipManager.ASPECT_DECLARATIONS, false); assertEquals("Should have found exactly one relationship to target type\n" + rels, 1, rels.size()); IJavaElement elt = rels.get(0); assertTrue("Relationship should be to a type " + elt, elt instanceof IType); assertTrue("Element should exist " + elt, elt.exists()); assertEquals("wrong name for element", "Keys", elt.getElementName()); rels = model.getRelationshipsForElement(elt, AJRelationshipManager.DECLARED_ON, false); assertEquals("Should have found exactly one relationship to target type\n" + rels, 1, rels.size()); assertEquals(cityType, rels.get(0)); assertEquals("Should have exactly 2 relationships in the entire project", 2, model.getRelationshipsForProject(AJRelationshipManager.getAllRelationshipTypes()).size()); }
From source file:org.eclipse.ajdt.internal.corext.util.OpenTypeHistory.java
License:Open Source License
private long getContainerTimestamp(TypeNameMatch match) { try {//from ww w. ja v a 2 s. c om IType type = match.getType(); IResource resource = type.getResource(); if (resource != null) { URI location = resource.getLocationURI(); if (location != null) { IFileInfo info = EFS.getStore(location).fetchInfo(); if (info.exists()) { // The element could be removed from the build path. So check // if the Java element still exists. IJavaElement element = JavaCore.create(resource); if (element != null && element.exists()) return info.getLastModified(); } } } else { // external JAR IPackageFragmentRoot root = match.getPackageFragmentRoot(); IFileInfo info = EFS.getLocalFileSystem().getStore(root.getPath()).fetchInfo(); if (info.exists()) { return info.getLastModified(); } } } catch (CoreException e) { // Fall through } return IResource.NULL_STAMP; }
From source file:org.eclipse.ajdt.internal.ui.editor.actions.AJOrganizeImportsAction.java
License:Open Source License
private ICompilationUnit[] getCompilationUnits(IStructuredSelection selection) { HashSet result = new HashSet(); Object[] selected = selection.toArray(); for (int i = 0; i < selected.length; i++) { try {//w w w . j a v a 2s . co m if (selected[i] instanceof IJavaElement) { IJavaElement elem = (IJavaElement) selected[i]; if (elem.exists()) { switch (elem.getElementType()) { case IJavaElement.TYPE: if (elem.getParent().getElementType() == IJavaElement.COMPILATION_UNIT) { result.add(elem.getParent()); } break; case IJavaElement.COMPILATION_UNIT: result.add(elem); break; case IJavaElement.IMPORT_CONTAINER: result.add(elem.getParent()); break; case IJavaElement.PACKAGE_FRAGMENT: collectCompilationUnits((IPackageFragment) elem, result); break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: collectCompilationUnits((IPackageFragmentRoot) elem, result); break; case IJavaElement.JAVA_PROJECT: IPackageFragmentRoot[] roots = ((IJavaProject) elem).getPackageFragmentRoots(); for (int k = 0; k < roots.length; k++) { collectCompilationUnits(roots[k], result); } break; } } } else if (selected[i] instanceof LogicalPackage) { IPackageFragment[] packageFragments = ((LogicalPackage) selected[i]).getFragments(); for (int k = 0; k < packageFragments.length; k++) { IPackageFragment pack = packageFragments[k]; if (pack.exists()) { collectCompilationUnits(pack, result); } } } } catch (JavaModelException e) { if (JavaModelUtil.isExceptionToBeLogged(e)) JavaPlugin.log(e); } } return (ICompilationUnit[]) result.toArray(new ICompilationUnit[result.size()]); }
From source file:org.eclipse.ajdt.internal.ui.editor.actions.AJOrganizeImportsAction.java
License:Open Source License
private boolean isEnabled(IStructuredSelection selection) { Object[] selected = selection.toArray(); for (int i = 0; i < selected.length; i++) { try {//from w w w . j a v a 2 s .c o m if (selected[i] instanceof IJavaElement) { IJavaElement elem = (IJavaElement) selected[i]; if (elem.exists()) { switch (elem.getElementType()) { case IJavaElement.TYPE: return elem.getParent().getElementType() == IJavaElement.COMPILATION_UNIT; // for browsing perspective case IJavaElement.COMPILATION_UNIT: return true; case IJavaElement.IMPORT_CONTAINER: return true; case IJavaElement.PACKAGE_FRAGMENT: case IJavaElement.PACKAGE_FRAGMENT_ROOT: IPackageFragmentRoot root = (IPackageFragmentRoot) elem .getAncestor(IJavaElement.PACKAGE_FRAGMENT_ROOT); return (root.getKind() == IPackageFragmentRoot.K_SOURCE); case IJavaElement.JAVA_PROJECT: // https://bugs.eclipse.org/bugs/show_bug.cgi?id=65638 return true; } } } else if (selected[i] instanceof LogicalPackage) { return true; } } catch (JavaModelException e) { if (!e.isDoesNotExist()) { JavaPlugin.log(e); } } } return false; }
From source file:org.eclipse.ajdt.internal.ui.markers.UpdateAJMarkers.java
License:Open Source License
private void addMarkersForFiles(IProgressMonitor monitor) { SubProgressMonitor subMonitor = new SubProgressMonitor(monitor, sourceFiles.length); for (int i = 0; i < sourceFiles.length; i++) { IJavaElement unit = JavaCore.create(sourceFiles[i]); if (unit != null && unit.exists() && unit instanceof ICompilationUnit) { subMonitor.subTask("Add markers for " + unit.getElementName()); addMarkersForFile((ICompilationUnit) unit, sourceFiles[i]); fileCount++;//from w w w . j a v a2 s . co m } if (subMonitor.isCanceled()) { throw new OperationCanceledException(); } subMonitor.worked(1); } }
From source file:org.eclipse.ajdt.internal.ui.refactoring.ITDRenameRefactoringProcessor.java
License:Open Source License
private RefactoringStatus initialize(JavaRefactoringArguments extended) { final String handle = extended.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_INPUT); if (handle != null) { final IJavaElement element = JavaRefactoringDescriptorUtil.handleToElement(extended.getProject(), handle, false);/*from w w w. j a va2s. c o m*/ if (element == null || !element.exists() || !(element instanceof IntertypeElement)) { return JavaRefactoringDescriptorUtil.createInputFatalStatus(element, getProcessorName(), IJavaRefactorings.RENAME_FIELD); } else { itd = (IntertypeElement) element; } } else { return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_INPUT)); } final String name = extended.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_NAME); if (name != null && !"".equals(name)) { //$NON-NLS-1$ setNewElementName(name); } else { return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_NAME)); } final String references = extended.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_REFERENCES); if (references != null) { updateReferences = Boolean.valueOf(references).booleanValue(); } else { return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_REFERENCES)); } return new RefactoringStatus(); }