List of usage examples for org.eclipse.jdt.core IJavaElement METHOD
int METHOD
To view the source code for org.eclipse.jdt.core IJavaElement METHOD.
Click Source Link
From source file:org.eclipse.mylyn.internal.java.ui.JavaStructureBridge.java
License:Open Source License
/** * Some copying from:// w w w. ja v a 2 s .c o m * * @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.mylyn.java.ui.editor.AutoFoldingStructureProvider.java
License:Open Source License
private void computeAdditions(IJavaElement element, Map map) { boolean createProjection = false; boolean collapse = false; switch (element.getElementType()) { case IJavaElement.IMPORT_CONTAINER: collapse = true;/* w ww . j av a 2 s . c o m*/ // collapse= fAllowCollapsing && fCollapseImportContainer; createProjection = true; break; case IJavaElement.TYPE: if (isInnerType((IType) element)) { IMylarElement node = ContextCorePlugin.getContextManager() .getElement(element.getHandleIdentifier()); if (!MylarUiPlugin.getDefault().isGlobalFoldingEnabled()) { collapse = false; } else if (node == null || node.getInterest().isInteresting()) { collapse = false; } else { collapse = true; } createProjection = true; break; } // collapse= fAllowCollapsing && fCollapseInnerTypes && isInnerType((IType) element); createProjection = true; break; case IJavaElement.METHOD: IMylarElement node = ContextCorePlugin.getContextManager().getElement(element.getHandleIdentifier()); if (!MylarUiPlugin.getDefault().isGlobalFoldingEnabled()) { collapse = false; } else if (node == null || node.getInterest().isInteresting()) { collapse = false; } else { collapse = true; } createProjection = true; break; default: collapse = true; // collapse= fAllowCollapsing && fCollapseMethods; // createProjection= true; // break; } if (createProjection) { IRegion[] regions = computeProjectionRanges(element); if (regions != null) { // comments for (int i = 0; i < regions.length - 1; i++) { Position position = createProjectionPosition(regions[i], null); boolean commentCollapse; if (position != null) { if (i == 0 && (regions.length > 2 || fHasHeaderComment) && element == fFirstType) { commentCollapse = fAllowCollapsing && fCollapseHeaderComments; } else { commentCollapse = fAllowCollapsing && fCollapseJavadoc; } map.put(new JavaProjectionAnnotation(element, commentCollapse, true), position); } } // code Position position = createProjectionPosition(regions[regions.length - 1], element); if (position != null) map.put(new JavaProjectionAnnotation(element, collapse, false), position); } } }
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 *//*w w w .ja va 2 s . com*/ 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
/** * Returns the IType associated with the <code>IJavaElement</code> passed in * @param element the <code>IJavaElement</code> to get the type from * @return the corresponding <code>IType</code> for the <code>IJavaElement</code>, or <code>null</code> if there is not one. * @since 3.3/*from ww w . ja v a2 s . c o m*/ */ protected IType getType(IJavaElement element) { switch (element.getElementType()) { case IJavaElement.FIELD: { return ((IField) element).getDeclaringType(); } case IJavaElement.METHOD: { return ((IMethod) element).getDeclaringType(); } case IJavaElement.TYPE: { return (IType) element; } default: { return null; } } }
From source file:org.eclipse.objectteams.otdt.debug.ui.internal.actions.OTToggleBreakpointAdapter.java
License:Open Source License
/** * Returns if the text selection is a valid method or not * @param selection the text selection// w w w.j a v a 2 s . com * @param part the associated workbench part * @return true if the selection is a valid method, false otherwise */ private boolean isMethod(ITextSelection selection, IWorkbenchPart part) { ITextEditor editor = getTextEditor(part); if (editor != null) { IJavaElement element = getJavaElement(editor.getEditorInput()); if (element != null) { try { if (element instanceof ICompilationUnit) { element = ((ICompilationUnit) element).getElementAt(selection.getOffset()); } else if (element instanceof IClassFile) { element = ((IClassFile) element).getElementAt(selection.getOffset()); } return element != null && element.getElementType() == IJavaElement.METHOD; } catch (JavaModelException e) { return false; } } } return false; }
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; }//from ww w . j av a 2 s .c o 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.objectteams.otdt.internal.ui.callinmarkers.CallinMarker.java
License:Open Source License
/** set the base element (class or method) to which this marker is attached. */ public void setBaseElement(IMember baseElement) { _attribs.put(CallinMarker.ATTR_BASE_ELEMENT, baseElement.getHandleIdentifier()); if (baseElement.getElementType() == IJavaElement.TYPE) { _attribs.put(IMarker.MESSAGE, OTDTUIPlugin.getResourceString("CallinMarker.playedby_tooltip") + ' ' //$NON-NLS-1$ + baseElement.getElementName()); } else if (this.id == CALLIN_ID) { _attribs.put(IMarker.MESSAGE, OTDTUIPlugin.getResourceString("CallinMarker.callin_tooltip") + ' ' //$NON-NLS-1$ + baseElement.getElementName() + "()"); //$NON-NLS-1$ } else if (this.id == CALLOUT_ID) { String baseMemberName = baseElement.getElementName(); if (baseElement.getElementType() == IJavaElement.METHOD) // not for callout to field baseMemberName += "()"; //$NON-NLS-1$ _attribs.put(IMarker.MESSAGE,// w w w . j a va 2 s .c o m OTDTUIPlugin.getResourceString("CallinMarker.callout_tooltip") + ' ' + baseMemberName); //$NON-NLS-1$ } }
From source file:org.eclipse.objectteams.otdt.internal.ui.callinmarkers.CallinMarkerRemover.java
License:Open Source License
public static void removeCallinMarker(IMember member, IResource resource) { // we need to pass the resource, as the method might already be removed and hence would // not be able to give us a resource. if (resource.exists()) { try {//from w w w.java2s.com IMarker marker; if (member.getElementType() == IJavaElement.METHOD) { marker = getCallinMarker(member, CallinMarker.CALLIN_ID, resource); if (marker != null) marker.delete(); } // method or field: marker = getCallinMarker(member, CallinMarker.CALLOUT_ID, resource); if (marker != null) marker.delete(); } catch (ResourceException ex) { // tree might be locked for modifications // FIXME(SH): handle this case, currently we just ignore this situation } catch (CoreException ex) { OTDTUIPlugin.logException("Problems removing callin marker", ex); //$NON-NLS-1$ } } }
From source file:org.eclipse.objectteams.otdt.internal.ui.packageview.PackageExplorerAdaptor.ContentProvider.java
License:Open Source License
@SuppressWarnings("nls") public static boolean isGenerated(IJavaElement elem) { // TODO (SH): check whether ViewerFilters can do the job better. // all kinds of generated features determined by name: String name = elem.getElementName(); final String[] patterns = new String[] { "_OT$", "TSuper__OT__", // general OT-prefix "class$", "access$", "val$", "this$" // std. java synthetics. };/*from ww w . j a v a 2s .c o m*/ for (int i = 0; i < patterns.length; i++) { if (name.indexOf(patterns[i]) >= 0) return true; } switch (elem.getElementType()) { case IJavaElement.TYPE: case IOTJavaElement.ROLE: // Predifined role types (non-overridable)? final String[] fullPatterns = new String[] { "IConfined", "Confined", "__OT__Confined", "ILowerable", // special OT types }; for (int i = 0; i < fullPatterns.length; i++) { if (name.equals(fullPatterns[i])) return true; } break; case IJavaElement.METHOD: // tsuper-method? IMethod method = (IMethod) elem; String[] paramTypes = method.getParameterTypes(); if (paramTypes.length > 0) { String lastType = Signature.getSimpleName(Signature.toString(paramTypes[paramTypes.length - 1])); if (lastType.startsWith("TSuper__OT__")) return true; } break; } // Synthetic role interface? if (elem.getElementType() == IOTJavaElement.ROLE) { IType type = (IType) elem; try { if (Flags.isSynthetic(type.getFlags())) return true; } catch (JavaModelException ex) { // nop } } return false; }
From source file:org.eclipse.objectteams.otdt.tests.AbstractJavaModelTests.java
License:Open Source License
/** * Select a method in a compilation unit identified with the nth occurence in the source of a given selection. * @param unit// w w w. ja va 2s . c om * @param selection * @param occurences * @return IMethod * @throws JavaModelException */ protected IMethod selectMethod(ICompilationUnit unit, String selection, int occurences) throws JavaModelException { return (IMethod) selectJavaElement(unit, selection, occurences, IJavaElement.METHOD); }