List of usage examples for org.eclipse.jdt.core IJavaElement exists
boolean exists();
From source file:org.summer.dsl.model.types.xtext.ui.JdtHoverProvider.java
License:Open Source License
public IInformationControlCreatorProvider getHoverInfo(EObject eObject, ITextViewer viewer, IRegion region) { if (eObject instanceof JvmIdentifiableElement) { JvmIdentifiableElement jvmIdentifiableElement = (JvmIdentifiableElement) eObject; IJavaElement javaElement = javaElementFinder.findElementFor(jvmIdentifiableElement); if (javaElement != null && javaElement.exists()) { javadocHover.setJavaElement(javaElement); final Object hoverInfo2 = javadocHover.getHoverInfo2(viewer, region); return new IInformationControlCreatorProvider() { public IInformationControlCreator getHoverControlCreator() { return javadocHover.getHoverControlCreator(); }/*from www.j av a2 s. c o m*/ public Object getInfo() { return hoverInfo2; } }; } } return null; }
From source file:org.summer.dsl.xbase.ui.launching.JavaElementDelegateJunitLaunch.java
License:Open Source License
@Override protected boolean containsElementsSearchedFor(IFile file) { IJavaElement element = JavaCore.create(file); if (element == null || !element.exists() || !(element instanceof ICompilationUnit)) { return false; }/*from w ww. ja v a 2s.c o m*/ try { ICompilationUnit cu = (ICompilationUnit) element; for (IType type : cu.getAllTypes()) { for (IMethod method : type.getMethods()) { int flags = method.getFlags(); if (Modifier.isPublic(flags) && !Modifier.isStatic(flags) && method.getNumberOfParameters() == 0 && Signature.SIG_VOID.equals(method.getReturnType()) && method.getElementName().startsWith("test")) { //$NON-NLS-1$ return true; } IAnnotation annotation = method.getAnnotation("Test"); //$NON-NLS-1$ if (annotation.exists()) return true; } } } catch (JavaModelException e) { log.error(e); } return super.containsElementsSearchedFor(file); }
From source file:org.summer.dsl.xbase.ui.launching.JavaElementDelegateMainLaunch.java
License:Open Source License
@Override protected boolean containsElementsSearchedFor(IFile file) { IJavaElement element = JavaCore.create(file); if (element == null || !element.exists() || !(element instanceof ICompilationUnit)) { return false; }/*from w w w . j a va 2 s.c om*/ try { ICompilationUnit cu = (ICompilationUnit) element; for (IType type : cu.getAllTypes()) { for (IMethod method : type.getMethods()) { int flags = method.getFlags(); if (Modifier.isPublic(flags) && Modifier.isStatic(flags) && "main".equals(method.getElementName()) && method.getParameterTypes().length == 1 && method.getParameterTypes()[0].equals("[QString;")) { //$NON-NLS-1$ return true; } } } } catch (JavaModelException e) { log.error(e); } return super.containsElementsSearchedFor(file); }
From source file:rabbit.tracking.internal.trackers.JavaTracker.java
License:Apache License
/** * Performs filtering of the data before saving. * <p>//from w w w . j a va 2 s .co m * NOTE: Then a user starts to type a new java element, like a method, he/she * knows what the name he/she is going to type for the method, but we have no * way of knowing that, so lots of events may be recorded before he/she * finishes typing the name. For example, if the user want to type "hello" as * the method name, there will be events recorded about the java element * "hel", or "hell", or "hello", we only need one of them ("hello") but we * also want to keep the time about the invalid ones, so before we save the * data, we check for non-existent java elements, and instead of saving the * data under those elements, we save the data under the first existing parent * of the elements, if all parents are missing (e.g. deletes the file), we * save it under the file parent, like "File.java". * </p> */ private void filterData() { Set<JavaEvent> filteredData = Sets.newLinkedHashSet(); for (JavaEvent event : getData()) { IJavaElement e = event.getElement(); // ITypeRoot represents the file, xxx.java. Everything above that is not // modifiable in a JavaEditor, so no need to check them: if (!e.exists()) { for (; !e.exists() && !(e instanceof ITypeRoot); e = e.getParent()) ; filteredData.add(new JavaEvent(event.getInterval(), e)); } else { IJavaElement actual = null; try { actual = filterElement(e); } catch (JavaModelException ex) { actual = null; ex.printStackTrace(); } if (actual == null) { filteredData.add(event); } else { filteredData.add(new JavaEvent(event.getInterval(), actual)); } } } // Replace the old data with the filtered: flushData(); for (JavaEvent event : filteredData) { addData(event); } }