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.pde.api.tools.ui.internal.JavaElementActionFilter.java
License:Open Source License
/** * @see org.eclipse.ui.IActionFilter#testAttribute(Object, String, String) *//* w w w . j av a 2 s. c om*/ @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 w w w . j a v a 2s . c o 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.eclipse.wst.xml.core.internal.contentmodel.tapestry.travelpackage.TapestryClassLoader.java
License:Open Source License
public List<String> loadParametersFromParentClass(IPackageFragmentRoot root, String classFileName) { List<String> list = new ArrayList<String>(); if (classFileName.indexOf('/') < 0) return list; String packageName = classFileName.substring(0, classFileName.lastIndexOf('/')).replace('/', '.'); String className = classFileName.substring(classFileName.lastIndexOf('/') + 1) + ".class"; try {/* w w w.ja v a 2 s .co m*/ PackageFragment packInstance = (PackageFragment) root.getPackageFragment(packageName); for (Object packo : packInstance.getChildrenOfType(IJavaElement.CLASS_FILE)) { ClassFile packi = (ClassFile) packo; if (packi.getElementName().equals(className)) { ClassFileReader reader = null; try { reader = new ClassFileReader(packi.getBytes(), null); } catch (ClassFormatException e) { e.printStackTrace(); } if (reader.getFields() != null) for (IBinaryField field : reader.getFields()) { boolean parameter = false; if (field.getAnnotations() == null) continue; for (IBinaryAnnotation anno : field.getAnnotations()) { if (String.valueOf(anno.getTypeName()).endsWith("/Parameter;")) { parameter = true; break; } } if (parameter) { list.add(String.valueOf(field.getName())); } } String parentClassName = String.valueOf(reader.getSuperclassName()); if (parentClassName != null && !parentClassName.isEmpty() && !parentClassName.equals("java/lang/Object")) { list.addAll(loadParametersFromParentClass(root, parentClassName)); } return list; } } } catch (JavaModelException e) { e.printStackTrace(); } return list; }
From source file:org.eclipse.wst.xml.ui.internal.contentassist.tapestry.TapestryRootComponentsProposalComputer.java
License:Open Source License
/** * Get custom component attribute templates * /*from w w w.j av a 2s. c o m*/ * @param project * @param contextTypeId * @param nodeName * @param tapestryClassLoader * @return */ public List<Template> getCustomComponentsAttributes(IProject project, String contextTypeId, String nodeName, TapestryClassLoader tapestryClassLoader) { components.clear(); String prefix = nodeName.substring(0, nodeName.indexOf(':')); try { final IFile res = project.getFile(TapestryContants.CUSTOM_COMPONENTS_FILE); if (res == null || prefix == null) return components; List<ComponentPackage> packageList = loadCustomComponentsPackageListWithPrefix(res, prefix); IPackageFragmentRoot[] roots = JavaCore.create(project).getAllPackageFragmentRoots(); for (ComponentPackage cp : packageList) { for (IPackageFragmentRoot root : roots) { if (cp.isArchive() == root.isArchive() && cp.getFragmentRoot().equals(root.getElementName())) { IPackageFragment packInstance = root.getPackageFragment(cp.getPath()); if (!root.isArchive()) { //If current custom component is in source directory if (packInstance != null) { IJavaElement[] elements = packInstance.getChildren(); for (IJavaElement ele : elements) { if (ele.getElementType() == IJavaElement.COMPILATION_UNIT && ele.getElementName().endsWith(".java")) { String name = ele.getElementName().substring(0, ele.getElementName().indexOf('.')); if ((prefix + ":" + name).toLowerCase().equals(nodeName)) { goThroughClass((ICompilationUnit) ele, contextTypeId); return components; } } } } } else if (packInstance instanceof PackageFragment) { //Current custom component is in jar files for (Object packo : ((PackageFragment) packInstance) .getChildrenOfType(IJavaElement.CLASS_FILE)) { ClassFile packi = (ClassFile) packo; String className = packi.getElementName().substring(0, packi.getElementName().indexOf('.')); if (className.indexOf('$') < 0 && (prefix + ":" + className.toLowerCase()).equals(nodeName)) { TapestryCoreComponents component = null; try { component = tapestryClassLoader.loadComponentAttributesFromClassFile(root, prefix, packi); } catch (ClassFormatException e) { e.printStackTrace(); } if (component != null) { for (String paramName : component.getPamameters()) { Template template = new Template(paramName, "add attribute " + paramName, contextTypeId, buildAttributeInsertCode(paramName), true); components.add(template); } return components; } } } } } } } } catch (JavaModelException e) { e.printStackTrace(); } return null; }
From source file:org.eclipse.wst.xml.ui.internal.contentassist.tapestry.TapestryRootComponentsProposalComputer.java
License:Open Source License
private List<String> getCustomComponentsNameList(IPackageFragmentRoot[] roots, ComponentPackage cp) { List<String> componentNameList = new ArrayList<String>(); try {//from ww w . j a v a2 s . com for (IPackageFragmentRoot root : roots) { if (root instanceof JarPackageFragmentRoot == cp.isArchive() && root.getElementName().equals(cp.getFragmentRoot())) { if (!root.isArchive()) { // Load custom components from source directory IPackageFragment packInstance = root.getPackageFragment(cp.getPath()); if (packInstance != null) { IJavaElement[] elements = packInstance.getChildren(); for (IJavaElement ele : elements) { if (ele.getElementType() == IJavaElement.COMPILATION_UNIT && ele.getElementName().endsWith(".java")) { String name = ele.getElementName().substring(0, ele.getElementName().indexOf('.')); componentNameList.add(name); } } } } else { // Load custom components from jar files for (IJavaElement pack : root.getChildren()) { if (pack != null && pack instanceof PackageFragment && pack.getElementName().equals(cp.getPath())) { for (Object packo : ((PackageFragment) pack) .getChildrenOfType(IJavaElement.CLASS_FILE)) { ClassFile packi = (ClassFile) packo; String itemName = packi.getElementName(); if (itemName.indexOf('$') < 0 && itemName.endsWith(".class")) componentNameList.add(itemName.substring(0, itemName.length() - 6)); } break; } } } return componentNameList; } } } catch (JavaModelException e) { e.printStackTrace(); } return componentNameList; }
From source file:org.eclipse.wst.xml.ui.internal.contentassist.XMLTemplateCompletionProcessor.java
License:Open Source License
/** * Get templates entrance method//from www. ja v a2 s. co m * * @param node * @param offset * @param contextTypeId * @param preChar * @param preChar2 * @return */ protected Template[] getTemplates(IDOMNode node, int offset, String contextTypeId, char preChar, char preChar2) { IProject project = getCurrentProject(); String mapKey = project.getName(); TapestryCoreComponents[] coreList = this.templateCacheMap.get(mapKey); if (coreList == null || coreList.length <= 0) { //Get tapestry components from classpath List<TapestryCoreComponents> list = new ArrayList<TapestryCoreComponents>(); PackageFragment tapestryCorePackage = getTapestryCoreLibrary(); try { if (tapestryCorePackage != null) for (Object packo : tapestryCorePackage.getChildrenOfType(IJavaElement.CLASS_FILE)) { ClassFile packi = (ClassFile) packo; if (packi.getElementName().indexOf('$') < 0) { TapestryCoreComponents component = tapestryClassLoader .loadComponentAttributesFromClassFile( tapestryClassLoader.getTapestryCoreJar(project), "t", packi); if (component != null) list.add(component); } } } catch (JavaModelException e) { e.printStackTrace(); } catch (ClassFormatException e) { e.printStackTrace(); } if (list != null && list.size() > 0) { coreList = list.toArray(new TapestryCoreComponents[0]); this.templateCacheMap.put(mapKey, coreList); } } if (coreList == null) return new Template[0]; if (contextTypeId.equals(TapestryElementCollection.componentsContextTypeId)) { boolean customComponent = false; int type = 1; if (preChar == '<') type = 2; else if (currentTapestryComponent.getPrefix() != null) { customComponent = tapestryRootComponentsProposalComputer .getComponentsPrefixList(this.getCurrentProject()) .contains(currentTapestryComponent.getPrefix()); if (customComponent) type = 3; } List<Template> components = new ArrayList<Template>(); if (currentTapestryComponent.getPrefix() != null && !customComponent) return components.toArray(new Template[0]); if (type != 3 || currentTapestryComponent.getNodeName().equals("t:")) { List<Template> buildInList = CoreComponentsUtil.buildTemplateListFromComponents(coreList, contextTypeId, type); if (buildInList != null && buildInList.size() > 0) components.addAll(buildInList); List<Template> rootComponents = tapestryRootComponentsProposalComputer .getRootComponentsTemplates(this.getCurrentProject(), contextTypeId, type); if (rootComponents != null && rootComponents.size() > 0) components.addAll(rootComponents); } if (currentTapestryComponent.getPrefix() == null || (currentTapestryComponent.getPrefix() + ":") .equals(currentTapestryComponent.getNodeName())) { List<Template> customComponents = tapestryRootComponentsProposalComputer .getCustomComponentsTemplates(this.getCurrentProject(), contextTypeId, type, currentTapestryComponent.getPrefix()); if (customComponents != null && customComponents.size() > 0) components.addAll(customComponents); } return components == null ? null : components.toArray(new Template[0]); } else if (contextTypeId.equals(TapestryElementCollection.attributesContextTypeId)) { String tapestryComponentName = getTapestryComponentName(node); //In condition <t:ActionLink if (tapestryComponentName == null) tapestryComponentName = currentTapestryComponent.getNodeName().toLowerCase(); //In condition <t:html.Message if (tapestryComponentName.indexOf('.') > -1 && currentTapestryComponent.getPrefix() != null && currentTapestryComponent.getPrefix().equals("t")) tapestryComponentName = tapestryComponentName.substring(2).replace('.', ':'); List<Template> tapestryTemplates = CoreComponentsUtil.getAttributeList(coreList, contextTypeId, tapestryComponentName); if (tapestryTemplates == null || tapestryTemplates.size() == 0) tapestryTemplates = tapestryRootComponentsProposalComputer.getRootComponentsAttributes(project, contextTypeId, tapestryComponentName); if (tapestryTemplates == null || tapestryTemplates.size() == 0) tapestryTemplates = tapestryRootComponentsProposalComputer.getCustomComponentsAttributes(project, contextTypeId, tapestryComponentName, tapestryClassLoader); return tapestryTemplates == null ? null : tapestryTemplates.toArray(new Template[0]); } else if (contextTypeId.equals(TapestryElementCollection.attributesValueContextTypeId)) { List<Template> tapestryTemplates = null; if (isComponentTypeContentAssist(node, offset)) { tapestryTemplates = CoreComponentsUtil.getTapestryComponentNameList(coreList, contextTypeId); List<Template> rootComponents = tapestryRootComponentsProposalComputer .getRootComponentsNameTemplates(this.getCurrentProject(), contextTypeId); if (rootComponents != null && rootComponents.size() > 0) tapestryTemplates.addAll(rootComponents); List<Template> customComponents = tapestryRootComponentsProposalComputer .getCustomComponentsNameTemplates(this.getCurrentProject(), contextTypeId); if (customComponents != null && customComponents.size() > 0) tapestryTemplates.addAll(customComponents); } else if (isComponentContentassist(node, offset)) { tapestryTemplates = TapestryComponentCompletionProposalComputer.getInstance() .computeCompletionProposals("", node, offset); } else { tapestryTemplates = collection.getAttributeValueList(contextTypeId, currentTapestryComponent); } return tapestryTemplates == null ? null : tapestryTemplates.toArray(new Template[0]); } else { Template templates[] = null; TemplateStore store = getTemplateStore(); if (store != null) { templates = store.getTemplates(contextTypeId); } return templates; } }
From source file:org.jaml.eclipse.utils.JDTUtils.java
License:Open Source License
public static void findJavaTypes(List<IType> list, IJavaElement element) throws JavaModelException { switch (element.getElementType()) { case IJavaElement.JAVA_PROJECT: // Java project IJavaProject proj = (IJavaProject) element; findJavaTypes(list, proj.getChildren()); break;//from www .ja va 2s. c om case IJavaElement.PACKAGE_FRAGMENT_ROOT: // JAR file IPackageFragmentRoot pkgRoot = (IPackageFragmentRoot) element; findJavaTypes(list, pkgRoot.getChildren()); break; case IJavaElement.PACKAGE_FRAGMENT: // Java package IPackageFragment pkgFragment = (IPackageFragment) element; findJavaTypes(list, pkgFragment.getChildren()); break; case IJavaElement.COMPILATION_UNIT: // Source file (.java) ICompilationUnit cmUnit = (ICompilationUnit) element; findJavaTypes(list, cmUnit.getTypes()); break; case IJavaElement.CLASS_FILE: // Compiled file (.class) IClassFile clFile = (IClassFile) element; findJavaTypes(list, clFile.getType()); break; case IJavaElement.TYPE: // Java class IType type = (IType) element; if (!type.getFullyQualifiedName().contains("$")) { list.add(type); } break; } }
From source file:org.jboss.tools.arquillian.ui.internal.commands.ArquillianPropertyTester.java
License:Open Source License
private boolean canLaunchAsArquillianJUnitTest(IJavaElement element) { try {/*from w w w . j a v a 2 s .co m*/ switch (element.getElementType()) { case IJavaElement.JAVA_PROJECT: case IJavaElement.PACKAGE_FRAGMENT_ROOT: return true; // can run, let test runner detect if there are tests case IJavaElement.PACKAGE_FRAGMENT: return ((IPackageFragment) element).hasChildren(); case IJavaElement.COMPILATION_UNIT: case IJavaElement.CLASS_FILE: case IJavaElement.TYPE: case IJavaElement.METHOD: return ArquillianSearchEngine.isArquillianJUnitTest(element, true, true, false); default: return false; } } catch (JavaModelException e) { return false; } }
From source file:org.jboss.tools.arquillian.ui.internal.launcher.ArquillianLaunchShortcut.java
License:Open Source License
private void launch(Object[] elements, String mode) { try {//from www. ja va 2 s . c o m IJavaElement elementToLaunch = null; if (elements.length == 1) { Object selected = elements[0]; if (!(selected instanceof IJavaElement) && selected instanceof IAdaptable) { selected = ((IAdaptable) selected).getAdapter(IJavaElement.class); } if (selected instanceof IJavaElement) { IJavaElement element = (IJavaElement) selected; switch (element.getElementType()) { case IJavaElement.JAVA_PROJECT: case IJavaElement.PACKAGE_FRAGMENT_ROOT: case IJavaElement.PACKAGE_FRAGMENT: IJavaProject javaProject = element.getJavaProject(); if (ArquillianSearchEngine.hasArquillianType(javaProject)) { elementToLaunch = element; } break; case IJavaElement.TYPE: IType type = (IType) element; if (ArquillianSearchEngine.isArquillianJUnitTest(type, true, true)) { elementToLaunch = type; } case IJavaElement.METHOD: javaProject = element.getJavaProject(); if (ArquillianSearchEngine.hasArquillianType(javaProject)) { elementToLaunch = element; } break; case IJavaElement.CLASS_FILE: type = ((IClassFile) element).getType(); if (ArquillianSearchEngine.isArquillianJUnitTest(type, true, true, false)) { elementToLaunch = type; } break; case IJavaElement.COMPILATION_UNIT: elementToLaunch = findTypeToLaunch((ICompilationUnit) element, mode); break; } } } if (elementToLaunch == null) { showNoTestsFoundDialog(); return; } performLaunch(elementToLaunch, mode); } catch (InterruptedException e) { // OK, silently move on } catch (CoreException e) { ExceptionHandler.handle(e, getShell(), ARQUILLIAN_J_UNIT_LAUNCH, LAUNCHING_OF_ARQILLIAN_J_UNIT_TESTS_FAILED); } catch (InvocationTargetException e) { ExceptionHandler.handle(e, getShell(), ARQUILLIAN_J_UNIT_LAUNCH, LAUNCHING_OF_ARQILLIAN_J_UNIT_TESTS_FAILED); } }
From source file:org.jboss.tools.vscode.java.internal.handlers.DocumentSymbolHandler.java
License:Open Source License
public static int mapKind(IJavaElement element) { // /**/*from w w w .ja v a2 s .c o m*/ // * 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; }