Example usage for org.eclipse.jdt.core IJavaElement getElementName

List of usage examples for org.eclipse.jdt.core IJavaElement getElementName

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaElement getElementName.

Prototype

String getElementName();

Source Link

Document

Returns the name of this element.

Usage

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;
}