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

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

Introduction

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

Prototype

int INITIALIZER

To view the source code for org.eclipse.jdt.core IJavaElement INITIALIZER.

Click Source Link

Document

Constant representing a stand-alone instance or class initializer.

Usage

From source file:org.eclipse.mylyn.internal.java.ui.JavaStructureBridge.java

License:Open Source License

/**
 * Some copying from:/*from ww  w . jav  a 2 s. com*/
 * 
 * @see org.eclipse.jdt.ui.ProblemsLabelDecorator
 */
public boolean containsProblem(IInteractionElement node) {
    try {
        IJavaElement element = (IJavaElement) getObjectForHandle(node.getHandleIdentifier());
        switch (element.getElementType()) {
        case IJavaElement.JAVA_PROJECT:
        case IJavaElement.PACKAGE_FRAGMENT_ROOT:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_INFINITE, null);
        case IJavaElement.PACKAGE_FRAGMENT:
        case IJavaElement.COMPILATION_UNIT:
        case IJavaElement.CLASS_FILE:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
        case IJavaElement.PACKAGE_DECLARATION:
        case IJavaElement.IMPORT_DECLARATION:
        case IJavaElement.IMPORT_CONTAINER:
        case IJavaElement.TYPE:
        case IJavaElement.INITIALIZER:
        case IJavaElement.METHOD:
        case IJavaElement.FIELD:
        case IJavaElement.LOCAL_VARIABLE:
            ICompilationUnit cu = (ICompilationUnit) element.getAncestor(IJavaElement.COMPILATION_UNIT);
            if (cu != null) {
                return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
            }
        }
    } catch (CoreException e) {
        // ignore
    }
    return false;
}

From source file:org.eclipse.objectteams.otdt.core.OTModelManager.java

License:Open Source License

/**
 * Add the propriate Object Teams Model element for a given IType 
 *///from ww  w.j  a v a 2 s  .  c o m
public IOTType addType(IType elem, int typeDeclFlags, String baseClassName, String baseClassAnchor,
        boolean isRoleFile) {
    IJavaElement parent = elem.getParent();
    IOTType result = null;

    switch (parent.getElementType()) {
    case IJavaElement.COMPILATION_UNIT:
    case IJavaElement.CLASS_FILE:
        if (isRoleFile) { //  could also be a teeam, which is handled inside the constructor
            if (elem.isBinary()) {
                MAPPING.addOTElement(result = new BinaryRoleType(elem, parent, typeDeclFlags, baseClassName,
                        baseClassAnchor));
            } else {
                MAPPING.addOTElement(
                        result = new RoleFileType(elem, parent, typeDeclFlags, baseClassName, baseClassAnchor));
            }
        } else if (TypeHelper.isTeam(typeDeclFlags)) {
            MAPPING.addOTElement(result = new OTType(IOTJavaElement.TEAM, elem, null, typeDeclFlags));
        }
        break;
    case IJavaElement.TYPE:
        IType encType = (IType) parent;
        IOTType otmParent = MAPPING.getOTElement(encType);

        result = maybeAddRoleType(elem, otmParent, typeDeclFlags, baseClassName, baseClassAnchor);
        break;
    //do nothing if anonymous type
    case IJavaElement.METHOD:
        break;
    case IJavaElement.INITIALIZER:
        break;
    case IJavaElement.FIELD:
        break;
    //TODO (jwl) Wether anonymous types are roles or not will be discoverable with 
    //           a future implementation (probably with the help of a newer version of the compiler)

    //             case IJavaElement.METHOD:
    //              IMethod encMethod   = (IMethod)parent;
    //              otmParent = MAPPING.getOTElement(encMethod.getDeclaringType());
    //              
    //              addRoleType(elem, otmParent, typeDeclFlags, baseClassName);
    //              break;
    //          case IJavaElement.INITIALIZER:
    //              IInitializer encInitializer   = (IInitializer)parent;
    //              otmParent = MAPPING.getOTElement(encInitializer.getDeclaringType());
    //              
    //              addRoleType(elem, otmParent, typeDeclFlags, baseClassName);
    //              break;
    //          case IJavaElement.FIELD:
    //              IField encField   = (IField)parent;
    //              otmParent = MAPPING.getOTElement(encField.getDeclaringType());
    //              
    //              addRoleType(elem, otmParent, typeDeclFlags, baseClassName);
    //              break;
    default:
        new Throwable("Warning: unexpected parent for OT element: " + parent).printStackTrace(); //$NON-NLS-1$
        break;
    }
    return result;
}

From source file:org.eclipse.objectteams.otdt.debug.ui.internal.actions.OTToggleBreakpointAdapter.java

License:Open Source License

public void toggleBreakpoints(IWorkbenchPart part, ISelection selection) throws CoreException {
    ISelection sel = translateToMembers(part, selection);
    if (sel instanceof IStructuredSelection) {
        IMember member = (IMember) ((IStructuredSelection) sel).getFirstElement();
        int mtype = member.getElementType();
        if (mtype == IJavaElement.FIELD || mtype == IJavaElement.METHOD || mtype == IJavaElement.INITIALIZER) {
            // remove line breakpoint if present first
            if (selection instanceof ITextSelection) {
                ITextSelection ts = (ITextSelection) selection;
                IType declaringType = member.getDeclaringType();
                IResource resource = BreakpointUtils.getBreakpointResource(declaringType);
                IJavaLineBreakpoint breakpoint = JDIDebugModel.lineBreakpointExists(resource,
                        getQualifiedName(declaringType), ts.getStartLine() + 1);
                if (breakpoint != null) {
                    deleteBreakpoint(breakpoint, part, null);
                    return;
                }//  ww  w.ja  v  a2s . co  m
                CompilationUnit unit = parseCompilationUnit(getTextEditor(part));
                //ObjectTeams: (visibility) OTValidBreakpointLocationLocator instead of ValidBreakpointLocationLocator
                OTValidBreakpointLocationLocator loc = new OTValidBreakpointLocationLocator(unit,
                        ts.getStartLine() + 1, true, true);
                unit.accept(loc);
                if (loc.getLocationType() == OTValidBreakpointLocationLocator.LOCATION_METHOD) {
                    toggleMethodBreakpoints(part, sel);
                } else if (loc.getLocationType() == OTValidBreakpointLocationLocator.LOCATION_FIELD) {
                    toggleWatchpoints(part, ts);
                } else if (loc.getLocationType() == OTValidBreakpointLocationLocator.LOCATION_LINE) {
                    toggleLineBreakpoints(part, ts);
                }
                // carp}
            }
        } else if (member.getElementType() == IJavaElement.TYPE) {
            toggleClassBreakpoints(part, sel);
        } else {
            //fall back to old behavior, always create a line breakpoint
            toggleLineBreakpoints(part, selection, true, null);
        }
    }
}

From source file:org.eclipse.pde.api.tools.ui.internal.JavaElementActionFilter.java

License:Open Source License

/**
 * @see org.eclipse.ui.IActionFilter#testAttribute(Object, String, String)
 *///  ww w .  j av a 2 s.  c o  m
@Override
public boolean testAttribute(Object target, String name, String value) {
    if (name.equals("JavaElementActionFilter")) { //$NON-NLS-1$
        if (target instanceof IJavaElement) {
            IJavaElement javaElement = (IJavaElement) target;
            if (value.equals("isEnabled")) { //$NON-NLS-1$
                while (javaElement != null) {
                    switch (javaElement.getElementType()) {
                    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
                        IPackageFragmentRoot root = (IPackageFragmentRoot) javaElement;
                        return !root.isArchive();
                    case IJavaElement.PACKAGE_FRAGMENT:
                    case IJavaElement.COMPILATION_UNIT:
                    case IJavaElement.CLASS_FILE:
                    case IJavaElement.TYPE:
                        javaElement = javaElement.getParent();
                        break;
                    case IJavaElement.ANNOTATION:
                    case IJavaElement.FIELD:
                    case IJavaElement.IMPORT_CONTAINER:
                    case IJavaElement.IMPORT_DECLARATION:
                    case IJavaElement.INITIALIZER:
                    case IJavaElement.JAVA_MODEL:
                    case IJavaElement.LOCAL_VARIABLE:
                    case IJavaElement.METHOD:
                    case IJavaElement.PACKAGE_DECLARATION:
                    case IJavaElement.TYPE_PARAMETER:
                        return false;
                    case IJavaElement.JAVA_PROJECT:
                        return true;
                    default:
                        break;
                    }
                }
                return true;
            }
        }
    }
    return false;
}

From source file:org.eclipse.recommenders.internal.rcp.JavaElementSelections.java

License:Open Source License

public static JavaElementSelectionLocation resolveSelectionLocationFromJavaElement(final IJavaElement element) {
    ensureIsNotNull(element);/*from  ww w  .j av a2  s . co m*/

    switch (element.getElementType()) {
    case IJavaElement.CLASS_FILE:
    case IJavaElement.COMPILATION_UNIT:
    case IJavaElement.PACKAGE_DECLARATION:
    case IJavaElement.IMPORT_DECLARATION:
    case IJavaElement.IMPORT_CONTAINER:
    case IJavaElement.TYPE:
        return TYPE_DECLARATION;
    case IJavaElement.METHOD:
    case IJavaElement.INITIALIZER:
        return METHOD_DECLARATION;
    case IJavaElement.FIELD:
        return FIELD_DECLARATION;
    case IJavaElement.LOCAL_VARIABLE:
        // shouldn't happen in a viewer selection, right?
        return METHOD_BODY;
    case IJavaElement.JAVA_MODEL:
    case IJavaElement.PACKAGE_FRAGMENT:
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
    case IJavaElement.ANNOTATION:
    default:
        return JavaElementSelectionLocation.UNKNOWN;
    }
}

From source file:org.incha.core.jswingripples.MethodOverrideTester.java

License:Open Source License

/**
 * Evaluates if a member in the focus' element hierarchy is visible from
 * elements in a package.//from  w  w w  .  j a  v  a2  s.  c om
 * @param member The member to test the visibility for
 * @param pack The package of the focus element focus
 * @return returns <code>true</code> if the member is visible from the package
 * @throws JavaModelException thrown when the member can not be accessed
 */
public static boolean isVisibleInHierarchy(final IMember member, final IPackageFragment pack)
        throws JavaModelException {
    final int type = member.getElementType();
    if (type == IJavaElement.INITIALIZER
            || (type == IJavaElement.METHOD && member.getElementName().startsWith("<"))) { //$NON-NLS-1$
        return false;
    }

    final int otherflags = member.getFlags();

    final IType declaringType = member.getDeclaringType();
    if (Flags.isPublic(otherflags) || Flags.isProtected(otherflags)
            || (declaringType != null && declaringType.isInterface())) {
        return true;
    } else if (Flags.isPrivate(otherflags)) {
        return false;
    }

    final IPackageFragment otherpack = (IPackageFragment) member.getAncestor(IJavaElement.PACKAGE_FRAGMENT);
    return (pack != null && pack.equals(otherpack));
}

From source file:org.jboss.tools.vscode.java.internal.handlers.DocumentSymbolHandler.java

License:Open Source License

public static int mapKind(IJavaElement element) {
    //      /**/*  www.ja  v a2  s .  c om*/
    //      * A symbol kind.
    //      */
    //      export enum SymbolKind {
    //        File = 1,
    //        Module = 2,
    //        Namespace = 3,
    //        Package = 4,
    //        Class = 5,
    //        Method = 6,
    //        Property = 7,
    //        Field = 8,
    //        Constructor = 9,
    //        Enum = 10,
    //        Interface = 11,
    //        Function = 12,
    //        Variable = 13,
    //        Constant = 14,
    //        String = 15,
    //        Number = 16,
    //        Boolean = 17,
    //        Array = 18,
    //      }
    switch (element.getElementType()) {
    case IJavaElement.ANNOTATION:
        return 7; // TODO: find a better mapping 
    case IJavaElement.CLASS_FILE:
    case IJavaElement.COMPILATION_UNIT:
        return 1;
    case IJavaElement.FIELD:
        return 8;
    case IJavaElement.IMPORT_CONTAINER:
    case IJavaElement.IMPORT_DECLARATION:
        return 2;
    case IJavaElement.INITIALIZER:
        return 9;
    case IJavaElement.LOCAL_VARIABLE:
    case IJavaElement.TYPE_PARAMETER:
        return 13;
    case IJavaElement.METHOD:
        return 12;
    case IJavaElement.PACKAGE_DECLARATION:
        return 3;
    case IJavaElement.TYPE:
        try {
            return (((IType) element).isInterface() ? 11 : 5);
        } catch (JavaModelException e) {
            return 5; //fallback 
        }
    }
    return 15;
}

From source file:org.seasar.s2junit4plugin.wizard.S2JUnit4StubUtility.java

License:Apache License

public static boolean isVisible(IMember member, IPackageFragment pack) throws JavaModelException {

    int type = member.getElementType();
    if (type == IJavaElement.INITIALIZER
            || (type == IJavaElement.METHOD && member.getElementName().startsWith("<"))) { //$NON-NLS-1$
        return false;
    }//from   ww  w . ja  va 2 s .c o  m

    int otherflags = member.getFlags();
    IType declaringType = member.getDeclaringType();
    if (Flags.isPublic(otherflags) || (declaringType != null && declaringType.isInterface())) {
        return true;
    } else if (Flags.isPrivate(otherflags)) {
        return false;
    }

    IPackageFragment otherpack = (IPackageFragment) member.getAncestor(IJavaElement.PACKAGE_FRAGMENT);
    return (pack != null && otherpack != null && pack.getElementName().equals(otherpack.getElementName()));
}

From source file:rabbit.tracking.internal.trackers.JavaTracker.java

License:Apache License

/**
 * Gets the actual element that we want before saving. One of the following
 * types is returned:/*from  w ww  .  j a v  a  2s  . c  o  m*/
 * 
 * <ul>
 * <li>A type that is not anonymous.</li>
 * <li>A method that is not enclosed in an anonymous type.</li>
 * <li>An initializer.</li>
 * <li>A compilation unit.</li>
 * <li>A class file.</li>
 * <li>Null</li>
 * </ul>
 * 
 * @param element The element to filter.
 * @return A filtered element, or null if not found.
 * @throws JavaModelException If this element does not exist or if an
 *           exception occurs while accessing its corresponding resource.
 */
private IJavaElement filterElement(@Nullable IJavaElement element) throws JavaModelException {

    if (element == null) {
        return null;
    }

    switch (element.getElementType()) {
    case IJavaElement.TYPE:
        if (((IType) element).isAnonymous()) {
            return filterElement(element.getParent());
        }
        return element;

    case IJavaElement.METHOD:
        if (((IType) element.getParent()).isAnonymous()) {
            return filterElement(element.getParent());
        }
        return element;

    case IJavaElement.INITIALIZER:
    case IJavaElement.COMPILATION_UNIT:
    case IJavaElement.CLASS_FILE:
        return element;

    default:
        return filterElement(element.getParent());
    }
}

From source file:rabbit.tracking.internal.trackers.JavaTrackerTest.java

License:Apache License

/**
 * Test an event on a static initialiser. This event should not be filtered on
 * save./*w ww. jav  a  2  s .com*/
 */
@Test
public void testFilter_existingElement_initializer() throws Exception {
    JavaEditor editor = closeAndOpenEditor();
    IDocument document = getDocument(editor);
    String staticName = "static";
    String methodText = staticName + " {}";
    int offset = document.get().indexOf("{") + 1;
    int len = 0;
    document.replace(offset, len, methodText);

    offset = document.get().indexOf(staticName);
    len = staticName.length();
    editor.getSelectionProvider().setSelection(new TextSelection(offset, len));

    IJavaElement element = getElementAtOffset(editor);
    // Check we got the selection right
    assertEquals(IJavaElement.INITIALIZER, element.getElementType());

    long preStart = System.currentTimeMillis();
    tracker.setEnabled(true);
    long postStart = System.currentTimeMillis();

    Thread.sleep(20);

    long preEnd = System.currentTimeMillis();
    tracker.setEnabled(false);
    long postEnd = System.currentTimeMillis();

    // Ask the tracker to save the data, the data should be appropriately
    // filtered
    tracker.saveData();

    assertEquals(1, tracker.getData().size());
    JavaEvent event = tracker.getData().iterator().next();
    long start = event.getInterval().getStartMillis();
    long end = event.getInterval().getEndMillis();
    checkTime(preStart, start, postStart, preEnd, end, postEnd);
    assertEquals(element, event.getElement());
}