List of usage examples for org.eclipse.jdt.core IJavaElement getElementName
String getElementName();
From source file:org.springframework.ide.eclipse.beans.ui.refactoring.util.BeansRefactoringChangeUtils.java
License:Open Source License
private static void createTextEdit(Node node, IJavaElement element, String newName, TextChange textChange, TextEdit textEdit) {/*from w w w . j a v a 2 s .com*/ if (node == null) { return; } String oldName = (element instanceof IType) ? ((IType) element).getFullyQualifiedName('$') : element.getElementName(); // creating replace edits for attributes NamedNodeMap attributes = node.getAttributes(); if (attributes != null) { for (int i = 0; i < attributes.getLength(); i++) { String attribute = attributes.item(i).getNodeValue(); if (oldName.equals(attribute) || isGoodMatch(attribute, oldName, element instanceof IPackageFragment)) { AttrImpl attr = (AttrImpl) attributes.getNamedItem(attributes.item(i).getNodeName()); int offset = attr.getValueRegionStartOffset() + 1; if (offset >= 0) { ReplaceEdit edit = new ReplaceEdit(offset, oldName.length(), newName); textEdit.addChild(edit); textChange.addTextEditGroup(new TextEditGroup("Update class reference", edit)); } } } } // creating replace edits for value strings if (node instanceof TextImpl) { String value = node.getNodeValue(); if (value != null) { if (oldName.equals(value) || isGoodMatch(value, oldName, element instanceof IPackageFragment)) { int offset = ((TextImpl) node).getStartOffset(); if (offset >= 0) { ReplaceEdit edit = new ReplaceEdit(offset, oldName.length(), newName); textEdit.addChild(edit); textChange.addTextEditGroup(new TextEditGroup("Update class reference", edit)); } } } } }
From source file:org.springframework.ide.eclipse.metadata.core.BeanMethodAnnotationMetadata.java
License:Open Source License
@SuppressWarnings("unchecked") @Override/* w w w .j a va 2 s. c o m*/ public String getValueAsText() { StringBuilder buf = new StringBuilder(); IJavaElement je = JavaCore.create(getHandleIdentifier()); if (getValue() instanceof Set) { Set<AnnotationMemberValuePair> pairs = new HashSet<AnnotationMemberValuePair>( (Set<AnnotationMemberValuePair>) getValue()); for (AnnotationMemberValuePair pair : (Set<AnnotationMemberValuePair>) getValue()) { if ("name".equals(pair.getName())) { //$NON-NLS-1$ buf.append(pair.getValue()); pairs.remove(pair); } } if (buf.length() == 0) { buf.append(je.getElementName()); } if (pairs.size() > 0) { buf.append(" ("); //$NON-NLS-1$ } for (AnnotationMemberValuePair pair : pairs) { if (pair.getName() != null) { buf.append(pair.getName()); buf.append(" = "); //$NON-NLS-1$ } buf.append(pair.getValue()); buf.append(", "); //$NON-NLS-1$ } if (pairs.size() > 0) { buf = new StringBuilder(buf.substring(0, buf.length() - 2)); buf.append(")"); //$NON-NLS-1$ } return buf.append(" - ").toString(); //$NON-NLS-1$ } return ""; //$NON-NLS-1$ }
From source file:org.springframework.tooling.jdt.ls.commons.java.JavaData.java
License:Open Source License
private void fillJavaElementData(IJavaElement element, JavaElementData data) { data.setName(element.getElementName()); data.setHandleIdentifier(element.getHandleIdentifier()); if (labelProvider != null) { data.setLabel(labelProvider.apply(element)); }//from w w w . j ava 2 s . c om }
From source file:org.springsource.ide.eclipse.gradle.core.test.util.JUnitLaunchConfigUtil.java
License:Open Source License
public static ILaunchConfigurationWorkingCopy createLaunchConfiguration(IJavaElement element) throws CoreException { final String testName; final String mainTypeQualifiedName; final String containerHandleId; switch (element.getElementType()) { case IJavaElement.JAVA_PROJECT: case IJavaElement.PACKAGE_FRAGMENT_ROOT: case IJavaElement.PACKAGE_FRAGMENT: { String name = JavaElementLabels.getTextLabel(element, JavaElementLabels.ALL_FULLY_QUALIFIED); containerHandleId = element.getHandleIdentifier(); mainTypeQualifiedName = EMPTY_STRING; testName = name.substring(name.lastIndexOf(IPath.SEPARATOR) + 1); }/*from ww w .ja v a 2 s .c o m*/ break; case IJavaElement.TYPE: { containerHandleId = EMPTY_STRING; mainTypeQualifiedName = ((IType) element).getFullyQualifiedName('.'); // don't replace, fix for binary inner types testName = element.getElementName(); } break; case IJavaElement.METHOD: { IMethod method = (IMethod) element; containerHandleId = EMPTY_STRING; mainTypeQualifiedName = method.getDeclaringType().getFullyQualifiedName('.'); testName = method.getDeclaringType().getElementName() + '.' + method.getElementName(); } break; default: throw new IllegalArgumentException( "Invalid element type to create a launch configuration: " + element.getClass().getName()); //$NON-NLS-1$ } String testKindId = TestKindRegistry.getContainerTestKindId(element); ILaunchConfigurationType configType = getLaunchManager() .getLaunchConfigurationType(JUnitLaunchConfigurationConstants.ID_JUNIT_APPLICATION); ILaunchConfigurationWorkingCopy wc = configType.newInstance(null, getLaunchManager().generateLaunchConfigurationName(testName)); wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, mainTypeQualifiedName); wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME, element.getJavaProject().getElementName()); wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_KEEPRUNNING, false); wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_CONTAINER, containerHandleId); wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_RUNNER_KIND, testKindId); JUnitMigrationDelegate.mapResources(wc); AssertionVMArg.setArgDefault(wc); if (element instanceof IMethod) { wc.setAttribute(JUnitLaunchConfigurationConstants.ATTR_TEST_METHOD_NAME, element.getElementName()); // only set for methods } return wc; }
From source file:org.summer.dsl.model.ui.refactoring.JdtRenameRefactoringProcessorFactory.java
License:Open Source License
public JavaRenameProcessor createRenameProcessor(IJavaElement element) { try {//from ww w .j a v a 2s . c o m switch (element.getElementType()) { case IJavaElement.TYPE: return new RenameTypeProcessor((IType) element); case IJavaElement.FIELD: return new RenameFieldProcessor((IField) element); case IJavaElement.METHOD: if (((IMethod) element).isConstructor()) break; if (Flags.isStatic(((IMethod) element).getFlags())) return new RenameNonVirtualMethodProcessor((IMethod) element); else return 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.switchyard.tools.ui.wizards.Java2WSDLWizard.java
License:Open Source License
private void setFilePageDefaultsForJavaElement(IJavaElement javaElement) { IResource root;//from ww w . j av a 2 s .c o m switch (javaElement.getElementType()) { case IJavaElement.PACKAGE_FRAGMENT: case IJavaElement.PACKAGE_FRAGMENT_ROOT: root = javaElement.getResource(); break; default: root = JavaUtil.getFirstResourceRoot(javaElement.getJavaProject()); if (root == null) { root = javaElement.getResource(); if (root.getType() == IResource.FILE) { root = root.getParent(); } } break; } if (root != null) { _filePage.setContainerFullPath(root.getFullPath()); } int elementType = javaElement.getElementType(); if (elementType == IJavaElement.TYPE) { _filePage.setFileName(javaElement.getElementName()); } else if (elementType == IJavaElement.COMPILATION_UNIT) { IType primaryType = ((ICompilationUnit) javaElement).findPrimaryType(); if (primaryType == null) { getBaseFileName(javaElement.getElementName()); } else { _filePage.setFileName(primaryType.getElementName()); } } }
From source file:org.whole.lang.artifacts.util.ArtifactsWorkspaceUtils.java
License:Open Source License
public static IEntity toArtifactsPath(IJavaElement fromJavaElement, IJavaElement toJavaElement, IEntity child) { ArtifactsEntityFactory aef = ArtifactsEntityFactory.instance(RegistryConfigurations.RESOLVER); IEntity entity;//from ww w . j ava2 s .c o m String name = toJavaElement.getElementName(); switch (toJavaElement.getElementType()) { case IJavaElement.COMPILATION_UNIT: FileArtifact fileArtifact = aef.createFileArtifact(); fileArtifact.setName(createFileName(name)); entity = fileArtifact; break; case IJavaElement.PACKAGE_FRAGMENT: if (name == IPackageFragment.DEFAULT_PACKAGE_NAME) return fromJavaElement.equals(toJavaElement) ? child : toArtifactsPath(fromJavaElement, toJavaElement.getParent(), child); PackageArtifact packageArtifact = aef.createPackageArtifact(); packageArtifact.setName(aef.createName(name)); entity = packageArtifact; break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: FolderArtifact folderArtifact = aef.createFolderArtifact(); Metadata metadata = aef.createMetadata(); metadata.setAttributes(aef.createAttributes(aef.createAttribute(AttributeEnum.source))); folderArtifact.setMetadata(metadata); folderArtifact.setName(aef.createName(name)); entity = folderArtifact; break; case IJavaElement.JAVA_PROJECT: Project project = aef.createProject(); project.setName(aef.createName(name)); project.setNatures(aef.createNatures(aef.createNature("org.eclipse.jdt.core.javanature"))); project.setArtifacts(aef.createArtifacts(0)); entity = project; break; default: case IJavaElement.JAVA_MODEL: Workspace workspace = aef.createWorkspace(); workspace.setProjects(aef.createProjects(0)); entity = workspace; break; } boolean isWorkspace = Matcher.match(ArtifactsEntityDescriptorEnum.Workspace, entity); if (!EntityUtils.isNull(child)) entity.wGet(isWorkspace ? ArtifactsFeatureDescriptorEnum.projects : ArtifactsFeatureDescriptorEnum.artifacts).wAdd(child); return fromJavaElement.equals(toJavaElement) ? entity : toArtifactsPath(fromJavaElement, toJavaElement.getParent(), entity); }
From source file:org.whole.lang.artifacts.util.ArtifactsWorkspaceUtils.java
License:Open Source License
public static IEntity getArtifacts(IEntity artifact) { ArtifactsEntityFactory aef = ArtifactsEntityFactory.instance(RegistryConfigurations.RESOLVER); IEntity children = BindingManagerFactory.instance.createTuple(); if (Matcher.match(ArtifactsEntityDescriptorEnum.Workspace, artifact)) { IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot(); for (IProject project : workspaceRoot.getProjects()) { Project projectArtifact = aef.createProject(); projectArtifact.setName(aef.createName(project.getName())); projectArtifact.setArtifacts(aef.createArtifacts(0)); children.wAdd(projectArtifact); }/*from w w w .j ava2 s.c om*/ } else { try { IBindingManager bindings = BindingManagerFactory.instance.createBindingManager(); bindPath(artifact, bindings, false); IContainer container = (IContainer) (bindings.wIsSet("folder") ? bindings.wGetValue("folder") : bindings.wGetValue("project")); IJavaElement javaContainer = JavaCore.create(container); if (javaContainer == null || javaContainer.getElementType() == IJavaElement.JAVA_PROJECT) { for (IResource resource : container.members()) { if (resource.getType() == IResource.FILE) { appendFileArtifact(((IFile) resource).getName(), children); } else { FolderArtifact folderArtifact = aef.createFolderArtifact(); Metadata metadata = aef.createMetadata(); metadata.setAttributes(aef.createAttributes(aef.createAttribute(AttributeEnum.source))); folderArtifact.setMetadata(metadata); folderArtifact.setName(aef.createName(StringUtils.getFileName(resource.getName()))); folderArtifact.setArtifacts(aef.createArtifacts(0)); children.wAdd(folderArtifact); } } } else { if (javaContainer.getElementType() == IJavaElement.PACKAGE_FRAGMENT_ROOT) { IPackageFragmentRoot fragmentRoot = (IPackageFragmentRoot) javaContainer; if (fragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE) { for (IJavaElement element : fragmentRoot.getChildren()) { if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { if (element.getElementName() == IPackageFragment.DEFAULT_PACKAGE_NAME) { appendPackageFragmentChildren((IPackageFragment) element, children); } else { PackageArtifact packageArtifact = aef.createPackageArtifact(); packageArtifact.setName( aef.createName(StringUtils.getFileName(element.getElementName()))); packageArtifact.setArtifacts(aef.createArtifacts(0)); children.wAdd(packageArtifact); } } } } } else // IJavaElement.PACKAGE_FRAGMENT appendPackageFragmentChildren((IPackageFragment) javaContainer, children); } } catch (Exception e) { } } return children; }
From source file:qwickie.util.DocumentHelper.java
License:Apache License
/** Finds every wicket:id element in a java editor */ public static IRegion[] findWicketRegions(final IEditorPart editor, final IDocument document, final int offset) { Assert.isNotNull(editor);/*from w w w . ja v a 2 s . com*/ Assert.isNotNull(document); final IRegion[] regions = new IRegion[3]; try { IRegion wicketIdRegion = findStringArgumentInJava(document, offset); if (wicketIdRegion == null) { return null; } final IRegion wicketComponentRegion = DocumentHelper.findWicketComponentRegion(document, wicketIdRegion.getOffset()); if (wicketComponentRegion == null) { return null; } final IRegion javaRegion = findWord(document, wicketComponentRegion.getOffset()); if (javaRegion.getLength() == 0) { return null; } final IJavaElement input = EditorUtility.getEditorInputJavaElement(editor, false); final IJavaElement[] javaElements = ((ICodeAssist) input).codeSelect(javaRegion.getOffset(), javaRegion.getLength()); if (javaElements == null || javaElements.length == 0) { return null; } for (final IJavaElement javaElement : javaElements) { final boolean isWicketComponent = TypeHelper.isWicketComponent(javaElement); // search for a string in a properties file if (STRING_RESOURCE_MODEL.equals(javaElement.getElementName()) || RESOURCE_MODEL.equals(javaElement.getElementName()) || (GET_STRING.equals(javaElement.getElementName()) && isWicketComponent)) { regions[2] = findStringArgumentInJava(document, offset); regions[1] = regions[2]; } else { regions[1] = DocumentHelper.getRegionOfWicketComponent(document, offset, javaElement); } } regions[0] = wicketIdRegion; return regions; } catch (final JavaModelException e) { return null; } }
From source file:qwickie.util.DocumentHelper.java
License:Apache License
/** Finds the IRegion where a wicket Component (one that extends Component) is found */ public static IRegion getRegionOfWicketComponent(final IDocument document, final int offset, final IJavaElement javaElement) throws JavaModelException { if (javaElement != null && javaElement instanceof NamedMember) { final NamedMember method = (NamedMember) javaElement; final IType type = method.getDeclaringType(); if (type != null) { final ITypeHierarchy hierarchy = type.newSupertypeHierarchy(null); if (hierarchy != null) { final IType[] supertypes = hierarchy.getAllSupertypes(type); for (final IType iType : supertypes) { if (iType.getFullyQualifiedName().equals(TypeHelper.COMPONENT)) { try { final IRegion lineInfo = document.getLineInformationOfOffset(offset); final String line = document.get(lineInfo.getOffset(), lineInfo.getLength()); final int lineRelativeOffset = offset - lineInfo.getOffset(); final int index = line.indexOf(javaElement.getElementName()); return new Region(offset - lineRelativeOffset + index, javaElement.getElementName().length()); } catch (final Exception ex) { return null; }//from w ww. j a v a 2s . c om } } } } } return null; }