Example usage for org.eclipse.jdt.core IMethod getHandleIdentifier

List of usage examples for org.eclipse.jdt.core IMethod getHandleIdentifier

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IMethod getHandleIdentifier.

Prototype

String getHandleIdentifier();

Source Link

Document

Returns a string representation of this element handle.

Usage

From source file:br.ufmg.dcc.tabuleta.model.io.EclipseHandleConverter.java

License:Open Source License

/**
 * @see ca.mcgill.cs.serg.cm.model.io.IConverter#toIDString(org.eclipse.jdt.core.IMethod)
 * @param pMethod See above./*  w w  w.j  a v  a  2  s  . c om*/
 * @return See above.
 */
public String toIDString(IMethod pMethod) {
    return pMethod.getHandleIdentifier();
}

From source file:navclus.userinterface.classdiagram.java.manager.TypeNode.java

License:Open Source License

public boolean contain(IMethod inputmethod) {

    for (IMethod method : this.methods) {
        if (method.getHandleIdentifier().equals(inputmethod.getHandleIdentifier())) {
            return true;
        }//  w w  w . j  a  va 2s.  c  o  m
    }
    return false;
}

From source file:net.sourceforge.c4jplugin.internal.decorators.C4JDecorator.java

License:Open Source License

public void decorate(Object element, IDecoration decoration) {

    if (element instanceof IFile) {
        if (DECO_CONTRACTED_CLASS) {
            Boolean contracted = ContractReferenceModel.isContracted((IResource) element);
            if (contracted != null && contracted == true)
                overlay(decoration, contractedDescriptor);
        }/*  w w w.  j a v  a2s .co m*/

        if (DECO_CONTRACT && ContractReferenceModel.isContract((IResource) element)) {
            overlay(decoration, contractDescriptor);
        }
    } else if (element instanceof IMethod) {
        IMethod method = (IMethod) element;
        IJavaProject jproject = method.getJavaProject();
        IResource resource = null;
        try {
            if (!jproject.getProject().isNatureEnabled(C4JProjectNature.NATURE_ID))
                return;
            ICompilationUnit cu = method.getCompilationUnit();
            if (cu == null)
                return;
            resource = cu.getCorrespondingResource();
        } catch (CoreException e1) {
        }

        if (resource == null)
            return;

        if (DECO_CONTRACTED_METHOD) {
            try {
                for (IMarker marker : resource.findMarkers(IContractedMethodMarker.ID, true,
                        IResource.DEPTH_ZERO)) {
                    if (marker.getAttribute(IContractedMethodMarker.ATTR_HANDLE_IDENTIFIER, "")
                            .equals(method.getHandleIdentifier())) {
                        String type = marker.getAttribute(IContractedMethodMarker.ATTR_CONTRACT_TYPE, "");
                        if (type.equals(IContractedMethodMarker.VALUE_PREPOST_METHOD)) {
                            overlay(decoration, contractedPrePostMethodDescriptor);
                        } else if (type.equals(IContractedMethodMarker.VALUE_POST_METHOD)) {
                            overlay(decoration, contractedPostMethodDescriptor);
                        } else if (type.equals(IContractedMethodMarker.VALUE_PRE_METHOD)) {
                            overlay(decoration, contractedPreMethodDescriptor);
                        }
                        break;
                    }
                }
            } catch (CoreException e) {
            }
        }

        if (DECO_CONTRACT_METHOD) {
            try {
                for (IMarker marker : resource.findMarkers(IMethodMarker.ID, true, IResource.DEPTH_ZERO)) {
                    if (marker.getAttribute(IMethodMarker.ATTR_HANDLE_IDENTIFIER, "")
                            .equals(method.getHandleIdentifier())) {
                        String type = marker.getAttribute(IMethodMarker.ATTR_CONTRACT_TYPE, "");
                        if (type.equals(IMethodMarker.VALUE_POST_METHOD)) {
                            overlay(decoration, postMethodDescriptor);
                        } else if (type.equals(IMethodMarker.VALUE_PRE_METHOD)) {
                            overlay(decoration, preMethodDescriptor);
                        } else if (type.equals(IMethodMarker.VALUE_CLASS_INVARIANT)) {
                            overlay(decoration, classInvariantDescriptor);
                        }
                        break;
                    }
                }
            } catch (CoreException e) {
            }
        }
    }
}

From source file:org.eclipse.che.jdt.refactoring.RenameTypeTest.java

License:Open Source License

@Test
public void testSimilarElements11() throws Exception {
    //Assure participants get notified of normal stuff (type rename
    //and resource changes) AND similarly named elements.
    ParticipantTesting.reset();/*  w  ww . j ava2  s  .co m*/
    ICompilationUnit cu = createCUfromTestFile(getPackageP(), "SomeClass");
    IType someClass = getType(cu, "SomeClass");
    IType other = getClassFromTestFile(getPackageP(), "SomeOtherClass");

    List handleList = new ArrayList();
    List argumentList = new ArrayList();

    List similarOldHandleList = new ArrayList();
    List similarNewNameList = new ArrayList();
    List similarNewHandleList = new ArrayList();

    final String newName = "SomeNewClass";

    // f-Field + getters/setters
    IField f3 = other.getField("fSomeClass");
    similarOldHandleList.add(f3.getHandleIdentifier());
    similarNewHandleList.add("Lp/SomeOtherClass;.fSomeNewClass");
    similarNewNameList.add("fSomeNewClass");

    IMethod m3 = other.getMethod("getSomeClass", new String[0]);
    similarOldHandleList.add(m3.getHandleIdentifier());
    similarNewNameList.add("getSomeNewClass");
    similarNewHandleList.add("Lp/SomeOtherClass;.getSomeNewClass()V");
    IMethod m4 = other.getMethod("setSomeClass", new String[] { "QSomeClass;" });
    similarOldHandleList.add(m4.getHandleIdentifier());
    similarNewNameList.add("setSomeNewClass");
    similarNewHandleList.add("Lp/SomeOtherClass;.setSomeNewClass(QSomeNewClass;)V");

    // non-f-field + getter/setters
    IField f1 = someClass.getField("someClass");
    similarOldHandleList.add(f1.getHandleIdentifier());
    similarNewNameList.add("someNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.someNewClass");
    IMethod m1 = someClass.getMethod("getSomeClass", new String[0]);
    similarOldHandleList.add(m1.getHandleIdentifier());
    similarNewNameList.add("getSomeNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.getSomeNewClass()V");
    IMethod m2 = someClass.getMethod("setSomeClass", new String[] { "QSomeClass;" });
    similarOldHandleList.add(m2.getHandleIdentifier());
    similarNewNameList.add("setSomeNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.setSomeNewClass(QSomeNewClass;)V");

    // fs-field
    IField f2 = someClass.getField("fsSomeClass");
    similarOldHandleList.add(f2.getHandleIdentifier());
    similarNewNameList.add("fsSomeNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.fsSomeNewClass");

    // Type Stuff
    handleList.add(someClass);
    argumentList.add(new RenameArguments(newName, true));
    handleList.add(cu);
    argumentList.add(new RenameArguments(newName + ".java", true));
    handleList.add(cu.getResource());
    argumentList.add(new RenameArguments(newName + ".java", true));

    String[] handles = ParticipantTesting.createHandles(handleList.toArray());
    RenameArguments[] arguments = (RenameArguments[]) argumentList.toArray(new RenameArguments[0]);

    RenameJavaElementDescriptor descriptor = createRefactoringDescriptor(someClass, newName);
    setTheOptions(descriptor, true, false, true, null, RenamingNameSuggestor.STRATEGY_EMBEDDED);
    RefactoringStatus status = performRefactoring(descriptor);
    assertNull("was supposed to pass", status);

    checkResultInClass(newName);
    checkResultInClass("SomeOtherClass");

    ParticipantTesting.testRename(handles, arguments);
    ParticipantTesting.testSimilarElements(similarOldHandleList, similarNewNameList, similarNewHandleList);
}

From source file:org.eclipse.che.jdt.search.JavaElementToDtoConverter.java

License:Open Source License

private List<Method> getMethods(Object parent) throws JavaModelException {
    List<Method> result = new ArrayList<>();
    Set<Object> objects = childrens.get(parent);
    if (objects == null) {
        return result;
    }//  w ww.  j a v a 2  s .  c  o m

    for (Object object : objects) {
        if (object instanceof IMethod) {
            IMethod method = (IMethod) object;
            Method met = DtoFactory.newDto(Method.class);
            met.setHandleIdentifier(method.getHandleIdentifier());
            met.setFlags(method.getFlags());
            met.setElementName(method.getElementName());
            met.setLabel(JavaElementLabels.getElementLabel(method, JavaElementLabels.ALL_DEFAULT));
            result.add(met);
        }
    }

    return result;
}

From source file:org.eclipse.che.plugin.java.server.JavaNavigation.java

License:Open Source License

private Method convertToDTOMethod(IMethod iMethod) throws JavaModelException {
    Method method = DtoFactory.newDto(Method.class);

    setRootPath(iMethod, method);/*from   w  w w  .  j a v  a 2  s  .c  om*/

    method.setFileRegion(convertToDTORegion(iMethod.getNameRange()));
    method.setElementName(iMethod.getElementName());
    method.setReturnType(Signature.toString(iMethod.getReturnType()));
    method.setHandleIdentifier(iMethod.getHandleIdentifier());
    method.setFlags(iMethod.getFlags());
    method.setLabel(org.eclipse.jdt.ui.JavaElementLabels.getElementLabel(iMethod,
            org.eclipse.jdt.ui.JavaElementLabels.ALL_DEFAULT));

    return method;
}

From source file:org.eclipse.che.plugin.java.server.jdt.refactoring.RenameTypeTest.java

License:Open Source License

@Test
public void testSimilarElements11() throws Exception {
    //Assure participants get notified of normal stuff (type rename
    //and resource changes) AND similarly named elements.
    ParticipantTesting.reset();/*from w w w  .  j  a  va2  s .  c o  m*/
    ICompilationUnit cu = createCUfromTestFile(getPackageP(), "SomeClass");
    IType someClass = getType(cu, "SomeClass");
    IType other = getClassFromTestFile(getPackageP(), "SomeOtherClass");

    List handleList = new ArrayList();
    List argumentList = new ArrayList();

    List similarOldHandleList = new ArrayList();
    List similarNewNameList = new ArrayList();
    List similarNewHandleList = new ArrayList();

    final String newName = "SomeNewClass";

    // f-Field + getters/setters
    IField f3 = other.getField("fSomeClass");
    similarOldHandleList.add(f3.getHandleIdentifier());
    similarNewHandleList.add("Lp/SomeOtherClass;.fSomeNewClass");
    similarNewNameList.add("fSomeNewClass");

    IMethod m3 = other.getMethod("getSomeClass", new String[0]);
    similarOldHandleList.add(m3.getHandleIdentifier());
    similarNewNameList.add("getSomeNewClass");
    similarNewHandleList.add("Lp/SomeOtherClass;.getSomeNewClass()V");
    IMethod m4 = other.getMethod("setSomeClass", new String[] { "QSomeClass;" });
    similarOldHandleList.add(m4.getHandleIdentifier());
    similarNewNameList.add("setSomeNewClass");
    similarNewHandleList.add("Lp/SomeOtherClass;.setSomeNewClass(QSomeNewClass;)V");

    // non-f-field + getter/setters
    IField f1 = someClass.getField("someClass");
    similarOldHandleList.add(f1.getHandleIdentifier());
    similarNewNameList.add("someNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.someNewClass");
    IMethod m1 = someClass.getMethod("getSomeClass", new String[0]);
    similarOldHandleList.add(m1.getHandleIdentifier());
    similarNewNameList.add("getSomeNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.getSomeNewClass()V");
    IMethod m2 = someClass.getMethod("setSomeClass", new String[] { "QSomeClass;" });
    similarOldHandleList.add(m2.getHandleIdentifier());
    similarNewNameList.add("setSomeNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.setSomeNewClass(QSomeNewClass;)V");

    // fs-field
    IField f2 = someClass.getField("fsSomeClass");
    similarOldHandleList.add(f2.getHandleIdentifier());
    similarNewNameList.add("fsSomeNewClass");
    similarNewHandleList.add("Lp/SomeNewClass;.fsSomeNewClass");

    // Type Stuff
    handleList.add(someClass);
    argumentList.add(new RenameArguments(newName, true));
    handleList.add(cu);
    argumentList.add(new RenameArguments(newName + ".java", true));
    handleList.add(cu.getResource());
    argumentList.add(new RenameArguments(newName + ".java", true));

    String[] handles = ParticipantTesting.createHandles(handleList.toArray());
    RenameArguments[] arguments = (RenameArguments[]) argumentList.toArray(new RenameArguments[0]);

    RenameJavaElementDescriptor descriptor = createRefactoringDescriptor(someClass, newName);
    setTheOptions(descriptor, true, false, true, null, RenamingNameSuggestor.STRATEGY_EMBEDDED);
    RefactoringStatus status = performRefactoring(descriptor);
    Assert.assertNull("was supposed to pass", status);

    checkResultInClass(newName);
    checkResultInClass("SomeOtherClass");

    ParticipantTesting.testRename(handles, arguments);
    ParticipantTesting.testSimilarElements(similarOldHandleList, similarNewNameList, similarNewHandleList);
}

From source file:org.eclipse.mylyn.java.tests.InteractionContextManagerTest.java

License:Open Source License

public void testParentInterestAfterDecay() throws JavaModelException {
    IWorkbenchPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart();
    IMethod m1 = type1.createMethod("void m1() { }", null, true, null);
    StructuredSelection sm1 = new StructuredSelection(m1);
    monitor.selectionChanged(part, sm1);

    IInteractionElement node = ContextCore.getContextManager().getElement(m1.getHandleIdentifier());
    assertTrue(node.getInterest().isInteresting());
    AbstractContextStructureBridge bridge = ContextCorePlugin.getDefault()
            .getStructureBridge(node.getContentType());
    IInteractionElement parent = ContextCore.getContextManager()
            .getElement(bridge.getParentHandle(node.getHandleIdentifier()));
    assertTrue(parent.getInterest().isInteresting());
    assertTrue(parent.getInterest().isPropagated());

    for (int i = 0; i < 1 / (scaling.getDecay()) * 3; i++) {
        ContextCore.getContextManager().processInteractionEvent(mockSelection());
    }/*from   w w w  .j  av  a2  s.  c o m*/

    assertFalse(
            ContextCore.getContextManager().getElement(m1.getHandleIdentifier()).getInterest().isInteresting());
    ContextCore.getContextManager().processInteractionEvent(mockSelection(m1.getHandleIdentifier()));
    assertTrue(
            ContextCore.getContextManager().getElement(m1.getHandleIdentifier()).getInterest().isInteresting());
}

From source file:org.eclipse.mylyn.java.tests.InteractionContextManagerTest.java

License:Open Source License

public void testPropagation() throws JavaModelException, Exception {
    IMethod m1 = type1.createMethod("void m1() { }", null, true, null);
    IInteractionElement node = ContextCore.getContextManager().getElement(m1.getHandleIdentifier());
    assertFalse(node.getInterest().isInteresting());

    InteractionEvent event = new InteractionEvent(InteractionEvent.Kind.MANIPULATION,
            new JavaStructureBridge().getContentType(), m1.getHandleIdentifier(), "source");
    ContextCorePlugin.getContextManager().processInteractionEvent(event, true);

    node = ContextCore.getContextManager().getElement(m1.getHandleIdentifier());
    assertTrue(node.getInterest().isInteresting());

    project.build();// www .  ja v a  2s  .c  o  m
    IJavaElement parent = m1.getParent();
    IInteractionElement parentNode = ContextCore.getContextManager().getElement(parent.getHandleIdentifier());
    assertFalse(parentNode.getInterest().isInteresting());

    InteractionEvent selectionEvent = new InteractionEvent(InteractionEvent.Kind.SELECTION,
            new JavaStructureBridge().getContentType(), m1.getHandleIdentifier(), "source");
    ContextCorePlugin.getContextManager().processInteractionEvent(selectionEvent, true);
    parentNode = ContextCore.getContextManager().getElement(parent.getHandleIdentifier());
    assertTrue(parentNode.getInterest().isInteresting());
}

From source file:org.eclipse.mylyn.java.tests.InteractionContextManagerTest.java

License:Open Source License

public void testIncremenOfParentDoi() throws JavaModelException, Exception {
    IWorkbenchPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart();
    IMethod m1 = type1.createMethod("void m1() { }", null, true, null);
    IInteractionElement node = ContextCore.getContextManager().getElement(m1.getHandleIdentifier());
    assertFalse(node.getInterest().isInteresting());

    StructuredSelection sm1 = new StructuredSelection(m1);
    monitor.selectionChanged(part, sm1);
    node = ContextCore.getContextManager().getElement(m1.getHandleIdentifier());
    assertTrue(node.getInterest().isInteresting());

    project.build();/*from   w w w.j a  va2  s  .c om*/
    IJavaElement parent = m1.getParent();
    @SuppressWarnings("unused")
    int level = 1;
    do {
        level++;
        IInteractionElement parentNode = ContextCore.getContextManager()
                .getElement(parent.getHandleIdentifier());
        if (!(parent instanceof JavaModel)) {
            assertEquals("failed on: " + parent.getClass(), node.getInterest().getValue(),
                    parentNode.getInterest().getValue());
        }
        parent = parent.getParent();
    } while (parent != null);
}