List of usage examples for org.eclipse.jdt.core IJavaElement exists
boolean exists();
From source file:net.sourceforge.c4jplugin.internal.ui.contracthierarchy.ContractHierarchyLifeCycle.java
License:Open Source License
public void ensureRefreshedContractHierarchy(final IJavaElement element, IRunnableContext context) throws InvocationTargetException, InterruptedException { if (element == null || !element.exists()) { freeHierarchy();//w w w. j av a 2 s. com return; } boolean hierachyCreationNeeded = (fHierarchy == null || !element.equals(fInputElement)); if (hierachyCreationNeeded || fHierarchyRefreshNeeded) { IRunnableWithProgress op = new IRunnableWithProgress() { public void run(IProgressMonitor pm) throws InvocationTargetException, InterruptedException { try { doHierarchyRefresh(element, pm); } catch (JavaModelException e) { throw new InvocationTargetException(e); } catch (OperationCanceledException e) { throw new InterruptedException(); } } }; fHierarchyRefreshNeeded = true; context.run(true, true, op); fHierarchyRefreshNeeded = false; } }
From source file:nz.ac.massey.cs.care.refactoring.executers.IntroduceFactoryRefactoring.java
License:Open Source License
private RefactoringStatus initialize(JavaRefactoringArguments arguments) { final String selection = arguments.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_SELECTION); if (selection != null) { int offset = -1; int length = -1; final StringTokenizer tokenizer = new StringTokenizer(selection); if (tokenizer.hasMoreTokens()) offset = Integer.valueOf(tokenizer.nextToken()).intValue(); if (tokenizer.hasMoreTokens()) length = Integer.valueOf(tokenizer.nextToken()).intValue(); if (offset >= 0 && length >= 0) { fSelectionStart = offset;/* ww w .j av a2 s .c o m*/ fSelectionLength = length; } else return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_illegal_argument, new Object[] { selection, JavaRefactoringDescriptorUtil.ATTRIBUTE_SELECTION })); } else return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_SELECTION)); String handle = arguments.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_INPUT); if (handle != null) { final IJavaElement element = JavaRefactoringDescriptorUtil.handleToElement(arguments.getProject(), handle, false); if (element == null || !element.exists() || element.getElementType() != IJavaElement.COMPILATION_UNIT) return JavaRefactoringDescriptorUtil.createInputFatalStatus(element, getName(), IJavaRefactorings.INTRODUCE_FACTORY); else { fCUHandle = (ICompilationUnit) element; initialize(); } } else return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_INPUT)); handle = arguments.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_ELEMENT + 1); if (handle != null) { final IJavaElement element = JavaRefactoringDescriptorUtil.handleToElement(arguments.getProject(), handle, false); if (element == null || !element.exists() || element.getElementType() != IJavaElement.TYPE) return JavaRefactoringDescriptorUtil.createInputFatalStatus(element, getName(), IJavaRefactorings.INTRODUCE_FACTORY); else { final IType type = (IType) element; fFactoryClassName = type.getFullyQualifiedName(); } } else return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_INPUT)); final String name = arguments.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_NAME); if (name != null && !"".equals(name)) //$NON-NLS-1$ fNewMethodName = name; else return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_NAME)); final String protect = arguments.getAttribute(ATTRIBUTE_PROTECT); if (protect != null) { fProtectConstructor = Boolean.valueOf(protect).booleanValue(); } else return RefactoringStatus.createFatalErrorStatus(Messages.format( RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, ATTRIBUTE_PROTECT)); return new RefactoringStatus(); }
From source file:org.codehaus.groovy.eclipse.refactoring.core.extract.ExtractGroovyMethodRefactoring.java
License:Apache License
private RefactoringStatus initialize(JavaRefactoringArguments arguments) { final String selection = arguments.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_SELECTION); if (selection == null) { return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_SELECTION)); }//from ww w.j a v a2 s . co m int offset = -1; int length = -1; final StringTokenizer tokenizer = new StringTokenizer(selection); if (tokenizer.hasMoreTokens()) offset = Integer.valueOf(tokenizer.nextToken()).intValue(); if (tokenizer.hasMoreTokens()) length = Integer.valueOf(tokenizer.nextToken()).intValue(); if (offset < 0 || length < 0) return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_illegal_argument, new Object[] { selection, JavaRefactoringDescriptorUtil.ATTRIBUTE_SELECTION })); selectedText = new Region(offset, length); final String handle = arguments.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_INPUT); if (handle == null) return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_INPUT)); IJavaElement element = JavaRefactoringDescriptorUtil.handleToElement(arguments.getProject(), handle, false); if (element == null || !element.exists() || element.getElementType() != IJavaElement.COMPILATION_UNIT || !(element instanceof GroovyCompilationUnit)) return JavaRefactoringDescriptorUtil.createInputFatalStatus(element, getName(), IJavaRefactorings.EXTRACT_METHOD); unit = (GroovyCompilationUnit) element; final String name = arguments.getAttribute(JavaRefactoringDescriptorUtil.ATTRIBUTE_NAME); if (name == null || name.length() == 0) return RefactoringStatus.createFatalErrorStatus( Messages.format(RefactoringCoreMessages.InitializableRefactoring_argument_not_exist, JavaRefactoringDescriptorUtil.ATTRIBUTE_NAME)); newMethodName = name; return new RefactoringStatus(); }
From source file:org.codehaus.groovy.eclipse.refactoring.test.rename.RenameTypeTests.java
License:Open Source License
private void checkMappers(Refactoring refactoring, IType type, String newCUName, IJavaElement[] someClassMembers) { RenameTypeProcessor rtp = (RenameTypeProcessor) ((RenameRefactoring) refactoring).getProcessor(); ICompilationUnit newUnit = (ICompilationUnit) rtp.getRefactoredJavaElement(type.getCompilationUnit()); assertTrue(newUnit.exists());/* w ww .j a v a 2 s. c o m*/ assertTrue(newUnit.getElementName().equals(newCUName)); IFile newFile = (IFile) rtp.getRefactoredResource(type.getResource()); assertTrue(newFile.exists()); assertTrue(newFile.getName().equals(newCUName)); if ((type.getParent().getElementType() == IJavaElement.COMPILATION_UNIT) && type.getCompilationUnit().getElementName().equals(type.getElementName() + ".groovy")) { assertFalse(type.getCompilationUnit().exists()); assertFalse(type.getResource().exists()); } IPackageFragment oldPackage = (IPackageFragment) type.getCompilationUnit().getParent(); IPackageFragment newPackage = (IPackageFragment) rtp.getRefactoredJavaElement(oldPackage); assertEquals(oldPackage, newPackage); for (int i = 0; i < someClassMembers.length; i++) { IMember member = (IMember) someClassMembers[i]; IJavaElement refactoredMember = rtp.getRefactoredJavaElement(member); if (member instanceof IMethod && member.getElementName().equals(type.getElementName())) continue; // constructor assertTrue(refactoredMember.exists()); assertEquals(member.getElementName(), refactoredMember.getElementName()); assertFalse(refactoredMember.equals(member)); } }
From source file:org.dev.toos.constcode.model.ConstModel.java
License:Apache License
/**?*/ private void iterateIJavaElement(IJavaElement atElement, String resourceName, Map<String, Object> findRes) throws CoreException { if (atElement.exists() == false) return;/* w ww . j a v a 2 s . c o m*/ switch (atElement.getElementType()) { /*package root*/ case IJavaElement.PACKAGE_FRAGMENT_ROOT: { IPackageFragmentRoot e = (IPackageFragmentRoot) atElement; Object[] resourcesItem = e.getNonJavaResources(); if (resourcesItem != null) for (Object element : resourcesItem) iterateItem(element, resourceName, findRes); // IJavaElement[] childs = e.getChildren(); // if (childs != null) // for (IJavaElement elementItem : childs) // iterateItem(elementItem, resourceName); break; } /*package*/ case IJavaElement.PACKAGE_FRAGMENT: { IPackageFragment e = (IPackageFragment) atElement; Object[] resourcesItem = e.getNonJavaResources(); if (resourcesItem != null) for (Object element : resourcesItem) iterateItem(element, resourceName, findRes); // IJavaElement[] childs = e.getChildren(); // if (childs != null) // for (IJavaElement elementItem : childs) // iterateItem(elementItem, resourceName); break; } } }
From source file:org.eclim.plugin.jdt.command.bean.PropertiesCommand.java
License:Open Source License
/** * Determines the sibling to insert relative to for the next property. * * @param type The parent type.//from ww w . j av a 2 s.co m * @param fields List of all the fields. * @param field The resolved field. * @param lastSibling The last sibling. * @param methodType The type of the method to be inserted. * * @return The relative sibling to use. */ protected IJavaElement getSibling(IType type, List<IField> fields, IField field, IJavaElement lastSibling, int methodType) throws Exception { // first run through if (lastSibling == null || !lastSibling.exists()) { // first try other methods for the same field. for (int ii = TYPE_GET; ii <= TYPE_SET_INDEX; ii++) { if (ii != methodType) { IMethod method = getBeanMethod(type, field, ii); if (method != null) { if (ii < methodType) { method = MethodUtils.getMethodAfter(type, method); } if (method != null) { return method; } else { return getFirstInnerType(type); } } } } int index = fields.indexOf(field); // insert before the next property's bean methods, if there are other // properties. if (fields.size() > 1 && (index + 1) < fields.size()) { IMethod method = null; for (int ii = index + 1; method == null && ii < fields.size(); ii++) { IField property = (IField) fields.get(ii); method = getBeanMethod(type, property, false); } if (method != null) { return method; } } // insert after previous property's bean methods, if there are other // properties. if (fields.size() > 1 && index > 0) { IMethod method = null; for (int ii = index - 1; method == null && ii >= 0; ii--) { IField property = (IField) fields.get(ii); method = getBeanMethod(type, property, true); } if (method != null) { method = MethodUtils.getMethodAfter(type, method); if (method != null) { return method; } } } return getFirstInnerType(type); } if (lastSibling != null && lastSibling.exists()) { return lastSibling; } return null; }
From source file:org.eclipse.ajdt.core.model.AJModelChecker.java
License:Open Source License
private static List<String> invalidAdviceRelationsip(IRelationship rel, AJProjectModelFacade model) { List<String> problems = new ArrayList<String>(); if (rel.getKind() == IRelationship.Kind.ADVICE || rel.getKind() == IRelationship.Kind.ADVICE_AFTER || rel.getKind() == IRelationship.Kind.ADVICE_AFTERRETURNING || rel.getKind() == IRelationship.Kind.ADVICE_AFTERTHROWING || rel.getKind() == IRelationship.Kind.ADVICE_BEFORE || rel.getKind() == IRelationship.Kind.ADVICE_AROUND) { IJavaElement elt = model.programElementToJavaElement(rel.getSourceHandle()); if (!elt.exists()) { problems.add("Java Element does not exist: " + rel.getSourceHandle() + "\n\tIt is the source relationship of " + toRelString(rel) + "\n\tThis may not actually be a problem if compiling broken code or advising static initializers."); }//from w ww. ja v a2 s . c om if (elt.getElementType() == IJavaElement.COMPILATION_UNIT || elt.getElementType() == IJavaElement.CLASS_FILE) { problems.add( "Java Element is wrong type (advice relationships should not contain any types or compilation units): " + rel.getSourceHandle() + "\n\tIt is the source relationship of " + toRelString(rel)); } for (Iterator<String> targetIter = rel.getTargets().iterator(); targetIter.hasNext();) { String target = targetIter.next(); elt = model.programElementToJavaElement(target); if (!elt.exists()) { problems.add("Java Element does not exist: " + target + "\n\tIt is the source relationship of " + toRelString(rel) + "\n\tThis may not actually be a problem if compiling broken code or advising static initializers."); } if (elt != AJProjectModelFacade.ERROR_JAVA_ELEMENT && (elt.getElementType() == IJavaElement.COMPILATION_UNIT || elt.getElementType() == IJavaElement.CLASS_FILE)) { problems.add( "Java Element is wrong type (advice relationships should not contain any types or compilation units): " + target + "\n\tIt is the source relationship of " + toRelString(rel)); } } } return problems; }
From source file:org.eclipse.ajdt.core.model.AJModelChecker.java
License:Open Source License
private static List<String> itdsNotOnType(IRelationship rel, AJProjectModelFacade model) { List<String> problems = new ArrayList<String>(); if (rel.getKind() == IRelationship.Kind.DECLARE_INTER_TYPE) { IJavaElement elt = model.programElementToJavaElement(rel.getSourceHandle()); if (!elt.exists()) { problems.add("Java Element does not exist: " + rel.getSourceHandle() + "\n\tIt is the source relationship of " + toRelString(rel) + "\n\tThis may not actually be a problem if compiling broken code."); }//from w w w .j a v a 2s. com if (elt != AJProjectModelFacade.ERROR_JAVA_ELEMENT && (elt.getElementType() == IJavaElement.FIELD || elt.getElementType() == IJavaElement.METHOD || elt.getElementType() == IJavaElement.LOCAL_VARIABLE || elt.getElementType() == IJavaElement.INITIALIZER || elt.getElementType() == IJavaElement.COMPILATION_UNIT || elt.getElementType() == IJavaElement.CLASS_FILE) && !(elt instanceof IntertypeElement || elt instanceof DeclareElement)) { problems.add( "Java Element is wrong type (ITD relationships should only contain types and intertype elements): " + rel.getSourceHandle() + "\n\tIt is the source relationship of " + toRelString(rel)); } for (Iterator<String> targetIter = rel.getTargets().iterator(); targetIter.hasNext();) { String target = targetIter.next(); elt = model.programElementToJavaElement(target); if (!elt.exists()) { problems.add("Java Element does not exist: " + target + "\n\tIt is the source relationship of " + toRelString(rel) + "\n\tThis may not actually be a problem if compiling broken code."); } if (elt != AJProjectModelFacade.ERROR_JAVA_ELEMENT && (elt.getElementType() == IJavaElement.FIELD || elt.getElementType() == IJavaElement.METHOD || elt.getElementType() == IJavaElement.LOCAL_VARIABLE || elt.getElementType() == IJavaElement.INITIALIZER || elt.getElementType() == IJavaElement.COMPILATION_UNIT || elt.getElementType() == IJavaElement.CLASS_FILE) && !(elt instanceof IntertypeElement || elt instanceof DeclareElement)) { problems.add( "Java Element is wrong type (ITD relationships should only contain types and intertype elements): " + target + "\n\tIt is the source relationship of " + toRelString(rel)); } } } return problems; }
From source file:org.eclipse.ajdt.core.tests.builder.LinkedFoldersTestBug270202.java
License:Open Source License
public void testHandlesInsideLinkedFolders() throws Exception { IJavaElement ije = AspectJCore.create(linkedFile); assertTrue("Compilation unit should exist " + ije.getHandleIdentifier(), ije.exists()); AJProjectModelFacade model = AJProjectModelFactory.getInstance().getModelForProject(project); IProgramElement ipe = model.javaElementToProgramElement(ije); assertNotSame("IProgramElement should exist", IHierarchy.NO_STRUCTURE, ipe); IJavaElement recreated = model.programElementToJavaElement(ipe); assertTrue("Compilation unit should exist " + recreated.getHandleIdentifier(), recreated.exists()); }
From source file:org.eclipse.ajdt.core.tests.codeselect.AbstractITDAwareCodeSelectionTests.java
License:Open Source License
protected void validateCodeSelect(ICompilationUnit unit, IRegion region, String expected, boolean expectingProblems, int numParams) throws Exception { if (!expectingProblems) { this.assertNoProblems(unit.getJavaProject().getProject()); }// www . j a v a2 s. co m performDummySearch(unit.getJavaProject()); 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()); assertEquals(expected, elt.getElementName()); if (numParams >= 0 && elt instanceof IMethod) { assertEquals("Wrong number of parameters for " + elt, numParams, ((IMethod) elt).getNumberOfParameters()); } }