List of usage examples for org.eclipse.jdt.core IJavaElement LOCAL_VARIABLE
int LOCAL_VARIABLE
To view the source code for org.eclipse.jdt.core IJavaElement LOCAL_VARIABLE.
Click Source Link
From source file:edu.brown.cs.bubbles.bedrock.BedrockRenamer.java
License:Open Source License
/********************************************************************************/ void rename(String proj, String bid, String file, int start, int end, String name, String handle, String newname, boolean keeporig, boolean getters, boolean setters, boolean dohier, boolean qual, boolean refs, boolean dosimilar, boolean textocc, boolean doedit, String filespat, IvyXmlWriter xw) throws BedrockException { ICompilationUnit icu = our_plugin.getCompilationUnit(proj, file); IJavaElement[] elts;// ww w . j ava 2s.com try { elts = icu.codeSelect(start, end - start); } catch (JavaModelException e) { throw new BedrockException("Bad location: " + e, e); } IJavaElement relt = null; for (IJavaElement ije : elts) { if (handle != null && !handle.equals(ije.getHandleIdentifier())) continue; if (name != null && !name.equals(ije.getElementName())) continue; relt = ije; break; } if (relt == null) throw new BedrockException("Item to rename not found"); BedrockPlugin.logD("RENAME CHECK " + relt.getElementType() + " " + relt.getParent().getElementType()); switch (relt.getElementType()) { case IJavaElement.COMPILATION_UNIT: throw new BedrockException("Compilation unit renaming not supported yet"); case IJavaElement.PACKAGE_FRAGMENT_ROOT: case IJavaElement.PACKAGE_FRAGMENT: throw new BedrockException("Package renaming not supported yet"); case IJavaElement.FIELD: case IJavaElement.LOCAL_VARIABLE: case IJavaElement.TYPE_PARAMETER: break; case IJavaElement.METHOD: IMethod mthd = (IMethod) relt; try { if (mthd.isConstructor()) throw new BedrockException("Constructor renaming not supported yet"); } catch (JavaModelException e) { } break; case IJavaElement.TYPE: IJavaElement pelt = relt.getParent(); if (pelt.getElementType() == IJavaElement.COMPILATION_UNIT) { ITypeRoot xcu = (ITypeRoot) pelt; if (relt == xcu.findPrimaryType()) { throw new BedrockException("Compilation unit renaming based on type not supported yet"); } } break; default: throw new BedrockException("Invalid element type to rename"); } SearchPattern sp = SearchPattern.createPattern(relt, IJavaSearchConstants.ALL_OCCURRENCES, SearchPattern.R_EXACT_MATCH); List<ICompilationUnit> worku = new ArrayList<ICompilationUnit>(); for (IJavaElement je : BedrockJava.getAllProjects()) { our_plugin.getWorkingElements(je, worku); } ICompilationUnit[] work = new ICompilationUnit[worku.size()]; work = worku.toArray(work); int fg = IJavaSearchScope.SOURCES | IJavaSearchScope.REFERENCED_PROJECTS; IJavaSearchScope scp = SearchEngine.createJavaSearchScope(work, fg); SearchEngine se = new SearchEngine(work); SearchParticipant[] parts = new SearchParticipant[] { SearchEngine.getDefaultSearchParticipant() }; FindHandler fh = new FindHandler(xw, null); try { se.search(sp, parts, scp, fh, null); } catch (CoreException e) { throw new BedrockException("Problem doing find all search: " + e, e); } BedrockPlugin.logD("RENAME RESULT = " + xw.toString()); }
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) {/* ww w. ja v a 2 s. c om*/ 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:jp.littleforest.pathtools.handlers.CopyQualifiedNameHandler.java
License:Open Source License
protected String getQualifiedName(IJavaElement e) { String qn = ""; switch (e.getElementType()) { case IJavaElement.ANNOTATION: break;//from w ww. j a va 2 s.c om case IJavaElement.CLASS_FILE: qn = getQualifiedClassName((IClassFile) e); break; case IJavaElement.COMPILATION_UNIT: qn = getQualifiedClassName((ICompilationUnit) e); break; case IJavaElement.FIELD: qn = getQualifiedFieldName((IField) e); break; case IJavaElement.IMPORT_CONTAINER: break; case IJavaElement.IMPORT_DECLARATION: break; case IJavaElement.INITIALIZER: break; case IJavaElement.JAVA_MODEL: break; case IJavaElement.JAVA_PROJECT: break; case IJavaElement.LOCAL_VARIABLE: break; case IJavaElement.METHOD: qn = getQualifiedMethodName((IMethod) e); break; case IJavaElement.PACKAGE_DECLARATION: break; case IJavaElement.PACKAGE_FRAGMENT: qn = getQualifiedPackageName(e); break; case IJavaElement.TYPE: qn = getQualifiedClassName((IType) e); break; case IJavaElement.TYPE_PARAMETER: break; default: break; } return qn; }
From source file:mychangedetector.copyclasses.MyRenameLinkedMode.java
License:Open Source License
/** * Creates a rename descriptor.// w ww. j av a 2 s .c o m * * @param javaElement element to rename * @param newName new name * @return a rename descriptor with current settings as used in the refactoring dialogs * @throws JavaModelException if an error occurs while accessing the element */ private RenameJavaElementDescriptor createRenameDescriptor(IJavaElement javaElement, String newName) throws JavaModelException { String contributionId; // see RefactoringExecutionStarter#createRenameSupport(..): int elementType = javaElement.getElementType(); switch (elementType) { case IJavaElement.JAVA_PROJECT: contributionId = IJavaRefactorings.RENAME_JAVA_PROJECT; break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: contributionId = IJavaRefactorings.RENAME_SOURCE_FOLDER; break; case IJavaElement.PACKAGE_FRAGMENT: contributionId = IJavaRefactorings.RENAME_PACKAGE; break; case IJavaElement.COMPILATION_UNIT: contributionId = IJavaRefactorings.RENAME_COMPILATION_UNIT; break; case IJavaElement.TYPE: contributionId = IJavaRefactorings.RENAME_TYPE; break; case IJavaElement.METHOD: final IMethod method = (IMethod) javaElement; if (method.isConstructor()) return createRenameDescriptor(method.getDeclaringType(), newName); else contributionId = IJavaRefactorings.RENAME_METHOD; break; case IJavaElement.FIELD: IField field = (IField) javaElement; if (field.isEnumConstant()) contributionId = IJavaRefactorings.RENAME_ENUM_CONSTANT; else contributionId = IJavaRefactorings.RENAME_FIELD; break; case IJavaElement.TYPE_PARAMETER: contributionId = IJavaRefactorings.RENAME_TYPE_PARAMETER; break; case IJavaElement.LOCAL_VARIABLE: contributionId = IJavaRefactorings.RENAME_LOCAL_VARIABLE; break; default: return null; } RenameJavaElementDescriptor descriptor = (RenameJavaElementDescriptor) RefactoringCore .getRefactoringContribution(contributionId).createDescriptor(); descriptor.setJavaElement(javaElement); descriptor.setNewName(newName); if (elementType != IJavaElement.PACKAGE_FRAGMENT_ROOT) descriptor.setUpdateReferences(true); IDialogSettings javaSettings = JavaPlugin.getDefault().getDialogSettings(); IDialogSettings refactoringSettings = javaSettings.getSection(RefactoringWizardPage.REFACTORING_SETTINGS); //TODO: undocumented API if (refactoringSettings == null) { refactoringSettings = javaSettings.addNewSection(RefactoringWizardPage.REFACTORING_SETTINGS); } switch (elementType) { case IJavaElement.METHOD: case IJavaElement.FIELD: descriptor.setDeprecateDelegate(refactoringSettings.getBoolean(DelegateUIHelper.DELEGATE_DEPRECATION)); descriptor.setKeepOriginal(refactoringSettings.getBoolean(DelegateUIHelper.DELEGATE_UPDATING)); } switch (elementType) { case IJavaElement.TYPE: // case IJavaElement.COMPILATION_UNIT: // TODO descriptor.setUpdateSimilarDeclarations( refactoringSettings.getBoolean(RenameRefactoringWizard.TYPE_UPDATE_SIMILAR_ELEMENTS)); int strategy; try { strategy = refactoringSettings.getInt(RenameRefactoringWizard.TYPE_SIMILAR_MATCH_STRATEGY); } catch (NumberFormatException e) { strategy = RenamingNameSuggestor.STRATEGY_EXACT; } descriptor.setMatchStrategy(strategy); } switch (elementType) { case IJavaElement.PACKAGE_FRAGMENT: descriptor.setUpdateHierarchy( refactoringSettings.getBoolean(RenameRefactoringWizard.PACKAGE_RENAME_SUBPACKAGES)); } switch (elementType) { case IJavaElement.PACKAGE_FRAGMENT: case IJavaElement.TYPE: String fileNamePatterns = refactoringSettings.get(RenameRefactoringWizard.QUALIFIED_NAMES_PATTERNS); if (fileNamePatterns != null && fileNamePatterns.length() != 0) { descriptor.setFileNamePatterns(fileNamePatterns); boolean updateQualifiedNames = refactoringSettings .getBoolean(RenameRefactoringWizard.UPDATE_QUALIFIED_NAMES); descriptor.setUpdateQualifiedNames(updateQualifiedNames); fShowPreview |= updateQualifiedNames; } } switch (elementType) { case IJavaElement.PACKAGE_FRAGMENT: case IJavaElement.TYPE: case IJavaElement.FIELD: boolean updateTextualOccurrences = refactoringSettings .getBoolean(RenameRefactoringWizard.UPDATE_TEXTUAL_MATCHES); descriptor.setUpdateTextualOccurrences(updateTextualOccurrences); fShowPreview |= updateTextualOccurrences; } switch (elementType) { case IJavaElement.FIELD: descriptor .setRenameGetters(refactoringSettings.getBoolean(RenameRefactoringWizard.FIELD_RENAME_GETTER)); descriptor .setRenameSetters(refactoringSettings.getBoolean(RenameRefactoringWizard.FIELD_RENAME_SETTER)); } return descriptor; }
From source file:net.sourceforge.tagsea.java.JavaWaypointUtils.java
License:Open Source License
/** * Returns a string representation to the given java element for use within * Java Waypoints. Calling this method will return the string representation * that would be placed inside the "Java Element" attribute of a java * waypoint for the given element./* w w w .j a va 2 s. c om*/ * @param element the element to get the string for. * @return the Java Waypoint representation of the element. */ public static String getStringForElement(IJavaElement element) { String result = ""; switch (element.getElementType()) { case IJavaElement.TYPE: result = "T:" + getStringForType((IType) element); break; case IJavaElement.PACKAGE_DECLARATION: result = "P:" + getStringForPackage((IPackageDeclaration) element); break; case IJavaElement.METHOD: result = "M:" + getStringForMethod((IMethod) element); break; case IJavaElement.FIELD: result = "F:" + getStringForField((IField) element); break; case IJavaElement.LOCAL_VARIABLE: result = "V:" + getStringForVariable((ILocalVariable) element); break; case IJavaElement.INITIALIZER: result = "I:" + getStringForInitializer((IInitializer) element); break; default: return ""; } return result; }
From source file:org.apache.felix.sigil.eclipse.model.util.JavaHelper.java
License:Apache License
private static void scanImports(IParent parent, Set<String> imports) throws JavaModelException { for (IJavaElement e : parent.getChildren()) { switch (e.getElementType()) { case IJavaElement.TYPE: handleType((IType) e, imports); break; case IJavaElement.IMPORT_DECLARATION: handleImport((IImportDeclaration) e, imports); break; case IJavaElement.FIELD: handleField((IField) e, imports); break; case IJavaElement.LOCAL_VARIABLE: handleLocalVariable((ILocalVariable) e, imports); break; case IJavaElement.ANNOTATION: handleAnnotation((IAnnotation) e, imports); break; case IJavaElement.METHOD: handleMethod((IMethod) e, imports); break; default://from w w w. j a v a 2 s . c o m // no action break; } if (e instanceof IParent) { scanImports((IParent) e, imports); } } }
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."); }//w w w .j a va 2 s .c o m 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.che.jdt.refactoring.RefactoringManager.java
License:Open Source License
private static RenameSupport createRenameSupport(IJavaElement element, String newName, int flags) throws CoreException { switch (element.getElementType()) { case IJavaElement.PACKAGE_FRAGMENT: return RenameSupport.create((IPackageFragment) element, newName, flags); case IJavaElement.COMPILATION_UNIT: return RenameSupport.create((ICompilationUnit) element, newName, flags); case IJavaElement.TYPE: return RenameSupport.create((IType) element, newName, flags); case IJavaElement.METHOD: final IMethod method = (IMethod) element; if (method.isConstructor()) return createRenameSupport(method.getDeclaringType(), newName, flags); else/*ww w.ja va2 s. com*/ return RenameSupport.create((IMethod) element, newName, flags); case IJavaElement.FIELD: return RenameSupport.create((IField) element, newName, flags); case IJavaElement.TYPE_PARAMETER: return RenameSupport.create((ITypeParameter) element, newName, flags); case IJavaElement.LOCAL_VARIABLE: return RenameSupport.create((ILocalVariable) element, newName, flags); } return null; }
From source file:org.eclipse.che.jdt.refactoring.RefactoringManager.java
License:Open Source License
private RenameWizard getWizardType(IJavaElement element) throws JavaModelException { switch (element.getElementType()) { case IJavaElement.PACKAGE_FRAGMENT: return RenameWizard.PACKAGE; case IJavaElement.COMPILATION_UNIT: return RenameWizard.COMPILATION_UNIT; case IJavaElement.TYPE: return RenameWizard.TYPE; case IJavaElement.METHOD: final IMethod method = (IMethod) element; if (method.isConstructor()) return RenameWizard.TYPE; else/*from ww w.j a va 2 s . c om*/ return RenameWizard.METHOD; case IJavaElement.FIELD: if (JdtFlags.isEnum((IMember) element)) { return RenameWizard.ENUM_CONSTANT; } return RenameWizard.FIELD; case IJavaElement.TYPE_PARAMETER: return RenameWizard.TYPE_PARAMETER; case IJavaElement.LOCAL_VARIABLE: return RenameWizard.LOCAL_VARIABLE; } return null; }
From source file:org.eclipse.che.jdt.refactoring.session.RenameLinkedModeRefactoringSession.java
License:Open Source License
/** * Creates a rename descriptor./*from ww w . ja va2 s . co m*/ * * @param javaElement element to rename * @param newName new name * @return a rename descriptor with current settings as used in the refactoring dialogs * @throws JavaModelException if an error occurs while accessing the element */ private RenameJavaElementDescriptor createRenameDescriptor(IJavaElement javaElement, String newName) throws JavaModelException { String contributionId; // see RefactoringExecutionStarter#createRenameSupport(..): int elementType = javaElement.getElementType(); switch (elementType) { case IJavaElement.JAVA_PROJECT: contributionId = IJavaRefactorings.RENAME_JAVA_PROJECT; break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: contributionId = IJavaRefactorings.RENAME_SOURCE_FOLDER; break; case IJavaElement.PACKAGE_FRAGMENT: contributionId = IJavaRefactorings.RENAME_PACKAGE; break; case IJavaElement.COMPILATION_UNIT: contributionId = IJavaRefactorings.RENAME_COMPILATION_UNIT; break; case IJavaElement.TYPE: contributionId = IJavaRefactorings.RENAME_TYPE; break; case IJavaElement.METHOD: final IMethod method = (IMethod) javaElement; if (method.isConstructor()) return createRenameDescriptor(method.getDeclaringType(), newName); else contributionId = IJavaRefactorings.RENAME_METHOD; break; case IJavaElement.FIELD: IField field = (IField) javaElement; if (field.isEnumConstant()) contributionId = IJavaRefactorings.RENAME_ENUM_CONSTANT; else contributionId = IJavaRefactorings.RENAME_FIELD; break; case IJavaElement.TYPE_PARAMETER: contributionId = IJavaRefactorings.RENAME_TYPE_PARAMETER; break; case IJavaElement.LOCAL_VARIABLE: contributionId = IJavaRefactorings.RENAME_LOCAL_VARIABLE; break; default: return null; } RenameJavaElementDescriptor descriptor = (RenameJavaElementDescriptor) RefactoringCore .getRefactoringContribution(contributionId).createDescriptor(); descriptor.setJavaElement(javaElement); descriptor.setNewName(newName); if (elementType != IJavaElement.PACKAGE_FRAGMENT_ROOT) descriptor.setUpdateReferences(true); // IDialogSettings javaSettings= JavaPlugin.getDefault().getDialogSettings(); // IDialogSettings refactoringSettings= javaSettings.getSection(RefactoringWizardPage.REFACTORING_SETTINGS); //TODO: undocumented API // if (refactoringSettings == null) { // refactoringSettings= javaSettings.addNewSection(RefactoringWizardPage.REFACTORING_SETTINGS); // } switch (elementType) { case IJavaElement.METHOD: case IJavaElement.FIELD: descriptor.setDeprecateDelegate( /*refactoringSettings.getBoolean(DelegateUIHelper.DELEGATE_DEPRECATION)*/false); descriptor .setKeepOriginal(/*refactoringSettings.getBoolean(DelegateUIHelper.DELEGATE_UPDATING)*/ false); } switch (elementType) { case IJavaElement.TYPE: // case IJavaElement.COMPILATION_UNIT: // TODO descriptor.setUpdateSimilarDeclarations( /*refactoringSettings.getBoolean(RenameRefactoringWizard.TYPE_UPDATE_SIMILAR_ELEMENTS)*/ false); int strategy; try { strategy = 1; //refactoringSettings.getInt(RenameRefactoringWizard.TYPE_SIMILAR_MATCH_STRATEGY); } catch (NumberFormatException e) { strategy = RenamingNameSuggestor.STRATEGY_EXACT; } descriptor.setMatchStrategy(strategy); } switch (elementType) { case IJavaElement.PACKAGE_FRAGMENT: descriptor.setUpdateHierarchy( /*refactoringSettings.getBoolean(RenameRefactoringWizard.PACKAGE_RENAME_SUBPACKAGES)*/true); } switch (elementType) { case IJavaElement.PACKAGE_FRAGMENT: case IJavaElement.TYPE: String fileNamePatterns = /*refactoringSettings.get(RenameRefactoringWizard.QUALIFIED_NAMES_PATTERNS)*/"*"; if (fileNamePatterns != null && fileNamePatterns.length() != 0) { descriptor.setFileNamePatterns(fileNamePatterns); boolean updateQualifiedNames = /*refactoringSettings.getBoolean(RenameRefactoringWizard.UPDATE_QUALIFIED_NAMES)*/false; descriptor.setUpdateQualifiedNames(updateQualifiedNames); // fShowPreview|= updateQualifiedNames; } } switch (elementType) { case IJavaElement.PACKAGE_FRAGMENT: case IJavaElement.TYPE: case IJavaElement.FIELD: boolean updateTextualOccurrences = false; //refactoringSettings.getBoolean(RenameRefactoringWizard.UPDATE_TEXTUAL_MATCHES); descriptor.setUpdateTextualOccurrences(updateTextualOccurrences); // fShowPreview|= updateTextualOccurrences; } switch (elementType) { case IJavaElement.FIELD: descriptor.setRenameGetters( /*refactoringSettings.getBoolean(RenameRefactoringWizard.FIELD_RENAME_GETTER)*/false); descriptor.setRenameSetters( /*refactoringSettings.getBoolean(RenameRefactoringWizard.FIELD_RENAME_SETTER)*/false); } return descriptor; }