List of usage examples for org.eclipse.jdt.core IJavaElement getElementName
String getElementName();
From source file:org.eclipse.e4.xwt.tools.ui.designer.wizards.ExternalizeStringsWizard.java
License:Open Source License
private void getDefaultAccessorContents() { IFile inputFile = designer.getFile(); IContainer container = inputFile.getParent(); IJavaElement javaElement = JavaCore.create(container); IPackageFragmentRoot defaultRoot = null; if (javaElement != null && javaElement.exists()) { IJavaProject javaProject = JavaCore.create(inputFile.getProject()); try {/* w w w . ja va2 s . c o m*/ IPackageFragmentRoot fragmentRoot[] = javaProject.getAllPackageFragmentRoots(); for (int i = 0; i < fragmentRoot.length; i++) { if (fragmentRoot[i].getKind() == IPackageFragmentRoot.K_SOURCE) { defaultRoot = fragmentRoot[i]; for (IJavaElement element : defaultRoot.getChildren()) { if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { javaElement = element; } } break; } } } catch (JavaModelException e) { e.printStackTrace(); } } if (javaElement == null || !(javaElement instanceof IPackageFragment)) { String projectName = inputFile.getProject().getName(); externalizeStringsWizardPage.setErrorMessage("The project " + projectName + " has not source folder."); return; } externalizeStringsWizardPage.setDefaultRoot(defaultRoot); externalizeStringsWizardPage.setDefaultFolder(defaultRoot.getResource().getFullPath().toString()); externalizeStringsWizardPage.setDefaultPackage(javaElement.getElementName()); }
From source file:org.eclipse.edt.debug.core.java.filters.ClasspathEntryFilter.java
License:Open Source License
/** * Subclasses are free to override this to provide more specific caching. *//*from w w w . j a va 2 s. c om*/ protected void processContainerEntry(IClasspathEntry entry, IJavaProject project, Map<String, Object> classMap) { if (project == null) { // Can't calulate the entry without an IJavaProject. return; } IPackageFragmentRoot[] roots = project.findPackageFragmentRoots(entry); for (IPackageFragmentRoot root : roots) { try { for (IJavaElement element : root.getChildren()) { if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { try { IPackageFragment pkg = (IPackageFragment) element; StringBuilder pkgBuf = new StringBuilder(50); IJavaElement current = pkg; while (current != null && current.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { if (pkgBuf.length() > 0) { pkgBuf.insert(0, '.'); } pkgBuf.insert(0, current.getElementName()); current = current.getParent(); } String pkgString = pkgBuf.toString(); IClassFile[] classes = pkg.getClassFiles(); for (IClassFile file : classes) { String className = file.getElementName(); className = className.substring(0, className.length() - 6); // remove ".class" StringBuilder buf = new StringBuilder(pkgString.length() + className.length() + 1); buf.append(pkgString); if (pkgString.length() > 0) { buf.append('.'); } buf.append(className); classMap.put(buf.toString(), null); } } catch (JavaModelException jme) { EDTDebugCorePlugin.log(jme); } } } } catch (JavaModelException jme) { EDTDebugCorePlugin.log(jme); } } }
From source file:org.eclipse.edt.debug.core.java.filters.WorkspaceProjectClassFilter.java
License:Open Source License
protected void compilationUnitRemoved(IJavaElementDelta delta, ICompilationUnit cu) throws JavaModelException { if (cu.exists()) { for (IType type : cu.getAllTypes()) { commonClassesToFilter.remove(type.getFullyQualifiedName()); }//from www .ja v a 2 s. c om } else { // It's already been deleted, so we can't get any of its children. We'll remove the main type, then iterate over the keys // to see if there's any inner classes to remove. StringBuilder buf = new StringBuilder(50); IJavaElement current = cu.getParent(); while (current != null && current.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { if (buf.length() > 0) { buf.insert(0, '.'); } buf.insert(0, current.getElementName()); current = current.getParent(); } if (buf.length() > 0) { buf.append('.'); } buf.append(cu.getElementName().substring(0, cu.getElementName().length() - 5)); // Remove ".java" commonClassesToFilter.remove(buf.toString()); buf.append('$'); String keyPrefix = buf.toString(); for (Iterator<String> it = commonClassesToFilter.keySet().iterator(); it.hasNext();) { if (it.next().startsWith(keyPrefix)) { it.remove(); } } } }
From source file:org.eclipse.edt.debug.core.java.filters.WorkspaceProjectClassFilter.java
License:Open Source License
protected void packageFragmentRemoved(IJavaElementDelta delta, IPackageFragment fragment) throws JavaModelException { if (fragment.exists()) { for (ICompilationUnit cu : fragment.getCompilationUnits()) { compilationUnitRemoved(delta, cu); }/* w w w . j a va 2 s .co m*/ } else { // It's already been deleted, so we can't get any of its children. We'll iterate over the keys removing those inside this fragment. StringBuilder buf = new StringBuilder(50); IJavaElement current = fragment; while (current != null && current.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { if (buf.length() > 0) { buf.insert(0, '.'); } buf.insert(0, current.getElementName()); current = current.getParent(); } if (buf.length() > 0) { buf.append('.'); String keyPrefix = buf.toString(); for (Iterator<String> it = commonClassesToFilter.keySet().iterator(); it.hasNext();) { if (it.next().startsWith(keyPrefix)) { it.remove(); } } } } }
From source file:org.eclipse.emf.ecore.xcore.ui.refactoring.XcoreRenameRefactoringProcessorFactory.java
License:Open Source License
@Override public JavaRenameProcessor createRenameProcessor(IJavaElement element) { try {/*from w w w .j a v a2 s.com*/ switch (element.getElementType()) { case IJavaElement.TYPE: { return new RenameTypeProcessor((IType) element); } case IJavaElement.FIELD: { return new RenameFieldProcessor((IField) element); } case IJavaElement.METHOD: { return Flags.isStatic(((IMethod) element).getFlags()) ? new RenameNonVirtualMethodProcessor((IMethod) element) : new RenameVirtualMethodProcessor((IMethod) element); } case IJavaElement.TYPE_PARAMETER: { return new RenameTypeParameterProcessor((ITypeParameter) element); } case IJavaElement.LOCAL_VARIABLE: { return new RenameLocalVariableProcessor((ILocalVariable) element); } } } catch (JavaModelException exc) { LOG.error("Error creating refactoring processor for " + element.getElementName(), exc); } return null; }
From source file:org.eclipse.fx.ide.jdt.ui.internal.refactoring.RefactoringUtil.java
License:Open Source License
/** * Build thh fully qualified name of a resource. * /*from ww w. j a v a 2 s. c o m*/ * @param resource * resource * @return fully qualified name */ public static String buildFullyQualifiedName(IResource resource) { IJavaElement je = JavaCore.create(resource); if (je != null) { try { IJavaProject p = je.getJavaProject(); IType t = p.findType(je.getParent().getElementName(), je.getElementName().replace("." + resource.getFileExtension(), "")); if (t == null) { System.err.println("Unable to construct FQN from '" + je.getParent().getElementName() + "." + je.getElementName().replace("." + resource.getFileExtension(), "") + "'"); return ""; } return t.getFullyQualifiedName(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return ""; } } else { return getNonJavaElementName(resource, resource.getName()); } }
From source file:org.eclipse.jdt.internal.core.CopyResourceElementsOperation.java
License:Open Source License
private ISchedulingRule getSchedulingRule(IJavaElement element) { if (element == null) return null; IResource sourceResource = getResource(element); IResource destContainer = getResource(getDestinationParent(element)); if (!(destContainer instanceof IContainer)) { return null; }/*from ww w . j av a 2s .co m*/ String newName; try { newName = getNewNameFor(element); } catch (JavaModelException e) { return null; } if (newName == null) newName = element.getElementName(); IResource destResource; String sourceEncoding = null; if (sourceResource.getType() == IResource.FILE) { destResource = ((IContainer) destContainer).getFile(new Path(newName)); try { sourceEncoding = ((IFile) sourceResource).getCharset(false); } catch (CoreException ce) { // use default encoding } } else { destResource = ((IContainer) destContainer).getFolder(new Path(newName)); } IResourceRuleFactory factory = ResourcesPlugin.getWorkspace().getRuleFactory(); ISchedulingRule rule; if (isMove()) { rule = factory.moveRule(sourceResource, destResource); } else { rule = factory.copyRule(sourceResource, destResource); } if (sourceEncoding != null) { rule = new MultiRule(new ISchedulingRule[] { rule, factory.charsetRule(destResource) }); } return rule; }
From source file:org.eclipse.jdt.internal.core.CopyResourceElementsOperation.java
License:Open Source License
private IResource getResource(IJavaElement element) { if (element == null) return null; if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { String pkgName = element.getElementName(); int firstDot = pkgName.indexOf('.'); if (firstDot != -1) { element = ((IPackageFragmentRoot) element.getParent()) .getPackageFragment(pkgName.substring(0, firstDot)); }// ww w. java 2s. c om } return element.getResource(); }
From source file:org.eclipse.jdt.internal.core.CopyResourceElementsOperation.java
License:Open Source License
/** * @see MultiOperation/* ww w .ja v a 2 s .c o m*/ * This method delegates to <code>processCompilationUnitResource</code> or * <code>processPackageFragmentResource</code>, depending on the type of * <code>element</code>. */ protected void processElement(IJavaElement element) throws JavaModelException { IJavaElement dest = getDestinationParent(element); switch (element.getElementType()) { case IJavaElement.COMPILATION_UNIT: processCompilationUnitResource((ICompilationUnit) element, (PackageFragment) dest); this.createdElements.add(((IPackageFragment) dest).getCompilationUnit(element.getElementName())); break; case IJavaElement.PACKAGE_FRAGMENT: processPackageFragmentResource((PackageFragment) element, (PackageFragmentRoot) dest, getNewNameFor(element)); break; default: throw new JavaModelException( new JavaModelStatus(IJavaModelStatusConstants.INVALID_ELEMENT_TYPES, element)); } }
From source file:org.eclipse.jdt.internal.core.SourceMapper.java
License:Open Source License
/** * Returns the type with the given <code>typeName</code>. Returns inner classes * as well./*from w w w . j a va 2 s . c o m*/ */ protected IType getType(String typeName) { if (typeName.length() == 0) { IJavaElement classFile = this.binaryType.getParent(); String classFileName = classFile.getElementName(); StringBuffer newClassFileName = new StringBuffer(); int lastDollar = classFileName.lastIndexOf('$'); for (int i = 0; i <= lastDollar; i++) newClassFileName.append(classFileName.charAt(i)); newClassFileName.append(Integer.toString(this.anonymousCounter)); PackageFragment pkg = (PackageFragment) classFile.getParent(); return new BinaryType(new ClassFile(pkg, newClassFileName.toString()), typeName); } else if (this.binaryType.getElementName().equals(typeName)) return this.binaryType; else return this.binaryType.getType(typeName); }