List of usage examples for org.eclipse.jdt.core IJavaElement CLASS_FILE
int CLASS_FILE
To view the source code for org.eclipse.jdt.core IJavaElement CLASS_FILE.
Click Source Link
From source file:org.eclipse.jpt.jpa.core.jpql.DefaultContentAssistExtension.java
License:Open Source License
/** * {@inheritDoc}//from ww w . j a v a2 s .co m */ public Iterable<String> classNames(String prefix, ClassType classType) { IJavaProject javaProject = jpaProject.getJavaProject(); Set<String> classNames = new HashSet<String>(); boolean emptyPrefix = (prefix.length() == 0); int index = !emptyPrefix ? prefix.lastIndexOf('.') : -1; boolean hasDot = (index > -1); // Note: In order to increase performance by preventing array creation and filtering, // IParent.getChildren() is used, then a simple check is performed on the element type try { // Traverse the packages for (IPackageFragment packageFragment : javaProject.getPackageFragments()) { String packageName = packageFragment.getElementName(); // Filter the package out if the prefix has a dot, // match the beginning of the prefix up to the last dot boolean packageAccepted = !hasDot || packageName.regionMatches(true, 0, prefix, 0, index); if (packageAccepted) { // Traverse the classes within the package for (IJavaElement javaElement : packageFragment.getChildren()) { switch (javaElement.getElementType()) { // Java source files case IJavaElement.COMPILATION_UNIT: { ICompilationUnit compilationUnit = (ICompilationUnit) javaElement; for (IJavaElement cuChild : compilationUnit.getChildren()) { // Class definition if (cuChild.getElementType() == IJavaElement.TYPE) { IType type = (IType) cuChild; String className = type.getFullyQualifiedName(); // Filter out the class if required // NOTE: An empty prefix will not filter anonymous or member classes, // to do so, we need to use what the Java content assist uses // otherwise it takes too long to calculate the valid classes if (emptyPrefix || acceptClass(type, className, classType, prefix, hasDot)) { classNames.add(className); } } } break; } // Java class files case IJavaElement.CLASS_FILE: { IClassFile classFile = (IClassFile) javaElement; IType type = classFile.getType(); String className = type.getFullyQualifiedName(); // Filter out the class if required // NOTE: An empty prefix will not filter anonymous or member classes, // to do so, we need to use what the Java content assist uses // otherwise it takes too long to calculate the valid classes if (emptyPrefix || acceptClass(type, className, classType, prefix, hasDot)) { classNames.add(className); } break; } } } } } } catch (Exception e) { // Just ignore } return classNames; }
From source file:org.eclipse.jst.common.jdt.internal.integration.ui.WTPUIWorkingCopyManager.java
License:Open Source License
protected IEditorInput getEditorInput(IJavaElement element) throws JavaModelException { IJavaElement localElement = element; while (localElement != null) { switch (localElement.getElementType()) { case IJavaElement.COMPILATION_UNIT: { ICompilationUnit cu = (ICompilationUnit) localElement; if (cu.isWorkingCopy()) cu = cu.getPrimary();//from w w w . j a v a 2 s . co m IResource resource = cu.getUnderlyingResource(); if (resource.getType() == IResource.FILE) return new FileEditorInput((IFile) resource); break; } case IJavaElement.CLASS_FILE: return new InternalClassFileEditorInput((IClassFile) localElement); } localElement = localElement.getParent(); } return null; }
From source file:org.eclipse.jst.jsf.common.internal.types.TypeInfoCache.java
License:Open Source License
/**Removes all cached info that may be affected by the given change. * @param delta - the change in the java model *//*from w w w .ja v a 2 s .co m*/ protected void updateChangedJavaElement(IJavaElementDelta delta) { IJavaElement element = delta.getElement(); switch (element.getElementType()) { case IJavaElement.JAVA_MODEL: updateChangedJavaModel(delta, element); break; case IJavaElement.JAVA_PROJECT: updateChangedJavaProject(delta, element); break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: updateChangedPackageFragmentRoot(delta, element); break; case IJavaElement.PACKAGE_FRAGMENT: updateChangedPackageFragment(delta, (IPackageFragment) element); break; case IJavaElement.CLASS_FILE: case IJavaElement.COMPILATION_UNIT: updateChangedOpenable(delta, element); break; } }
From source file:org.eclipse.mylyn.internal.java.ui.JavaStructureBridge.java
License:Open Source License
/** * Some copying from://from w w w. j a 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 boolean isInnerType(IType type) { try {//w w w. j av a2s . c o m return type.isMember(); } catch (JavaModelException x) { IJavaElement parent = type.getParent(); if (parent != null) { int parentType = parent.getElementType(); return (parentType != IJavaElement.COMPILATION_UNIT && parentType != IJavaElement.CLASS_FILE); } } return false; }
From source file:org.eclipse.mylyn.java.ui.editor.MylarJavaOutlinePage.java
License:Open Source License
/** * Checks whether a given Java element is an inner type. * /*from w ww. j ava2 s. co m*/ * @param element the java element * @return <code>true</code> iff the given element is an inner type */ private boolean isInnerType(IJavaElement element) { if (element != null && element.getElementType() == IJavaElement.TYPE) { IType type = (IType) element; try { return type.isMember(); } catch (JavaModelException e) { IJavaElement parent = type.getParent(); if (parent != null) { int parentElementType = parent.getElementType(); return (parentElementType != IJavaElement.COMPILATION_UNIT && parentElementType != IJavaElement.CLASS_FILE); } } } return false; }
From source file:org.eclipse.objectteams.otdt.core.ext.MarkableFactory.java
License:Open Source License
public static IMarkableJavaElement createMarkable(IJavaElement javaElement) { IClassFile classFile = (IClassFile) javaElement.getAncestor(IJavaElement.CLASS_FILE); if (classFile != null) return new JavaElementMarkable(classFile); else/* w w w . jav a2s.co m*/ return new ResourceMarkable(javaElement.getResource()); }
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 w w w .j a v a2s. 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.internal.ui.callinmarkers.CallinMarkerCreator2.java
License:Open Source License
/** * Fetch all methods and fields contained in the input. * @param javaElement the corresponding ICompilationUnit, IClassFile or IType */// w ww.j av a 2 s .c o m private Set<IMember> getAllMethodsAndFields(IJavaElement javaElement) { if (javaElement == null) return new HashSet<IMember>(0); Set<IMember> members = new HashSet<IMember>(13); switch (javaElement.getElementType()) { case IJavaElement.COMPILATION_UNIT: { ICompilationUnit unit = (ICompilationUnit) javaElement; IType[] types; try { types = unit.getTypes(); for (int idx = 0; idx < types.length; idx++) members.addAll(getAllMethodsAndFields(types[idx])); } catch (JavaModelException e) { // ignore, without types we simply find no methods } break; } case IJavaElement.CLASS_FILE: { IClassFile classFile = (IClassFile) javaElement; members.addAll(getAllMethodsAndFields(classFile.getType())); break; } case IJavaElement.TYPE: { IType type = (IType) javaElement; try { members.addAll(Arrays.asList(type.getMethods())); members.addAll(Arrays.asList(type.getFields())); IOTType otType = OTModelManager.getOTElement(type); if (otType != null && otType.isRole()) for (IMethodMapping mapping : ((IRoleType) otType).getMethodMappings(IRoleType.CALLOUTS)) members.add(mapping); // handle all inner types IType[] memberTypes = type.getTypes(); for (int idx = 0; idx < memberTypes.length; idx++) members.addAll(getAllMethodsAndFields(memberTypes[idx])); } catch (JavaModelException e) { // ignore, finding methods bailed out but keep those we already found } break; } default: break; } return members; }
From source file:org.eclipse.objectteams.otdt.ui.tests.refactoring.reorg.OTCopyToClipboardTests.java
License:Open Source License
private static int countResources(IJavaElement[] javaElementsCopied) { int count = 0; for (int i = 0; i < javaElementsCopied.length; i++) { IJavaElement element = javaElementsCopied[i]; switch (element.getElementType()) { case IJavaElement.JAVA_PROJECT: case IJavaElement.PACKAGE_FRAGMENT_ROOT: case IJavaElement.PACKAGE_FRAGMENT: case IJavaElement.COMPILATION_UNIT: case IJavaElement.CLASS_FILE: count++;/*from w w w. j av a 2s. c o m*/ } } return count; }