public static BinaryTypeDescriptor createDescriptor(IClassFile classFile) { ClassFile concreteClass = (ClassFile)classFile; PackageFragment parent = (PackageFragment) classFile.getParent(); return createDescriptor(parent, concreteClass); }
/** * Returns the package fragment root of this file. * * @param file the class file * @return the package fragment root of the given class file */ private IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) { IJavaElement element= file.getParent(); while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) element= element.getParent(); return (IPackageFragmentRoot) element; }
private static IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) { IJavaElement element = file.getParent(); while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) { element = element.getParent(); } return (IPackageFragmentRoot) element; }
private IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) { IJavaElement element= file.getParent(); while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) element= element.getParent(); return (IPackageFragmentRoot) element; }
private IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) { IJavaElement element= file.getParent(); while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) element= element.getParent(); return (IPackageFragmentRoot) element; }
/** * Default constructor. */ public ClassFileSynchronizer(IClassFileEditorInput input) { fInput= input; IJavaElement parent= fInput.getClassFile().getParent(); while (parent != null && !(parent instanceof IPackageFragmentRoot)) { parent= parent.getParent(); } fPackageFragmentRoot= (IPackageFragmentRoot) parent; }
/** * Returns the package fragment root of this file. * * @param file the class file * @return the package fragment root of the given class file */ private IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) { IJavaElement element= file.getParent(); while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) element= element.getParent(); return (IPackageFragmentRoot) element; }
/** * Returns the package fragment root of this file. * * @param file the class file * @return the package fragment root of the given class file */ private IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) { IJavaElement element= file.getParent(); while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) element= element.getParent(); return (IPackageFragmentRoot) element; }
private IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) { IJavaElement element= file.getParent(); while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) element= element.getParent(); return (IPackageFragmentRoot) element; }
private static String getFileURI(IClassFile classFile) { String packageName = classFile.getParent().getElementName(); String jarName = classFile.getParent().getParent().getElementName(); try { return new URI(JDT_SCHEME, "contents", PATH_SEPARATOR + jarName + PATH_SEPARATOR + packageName + PATH_SEPARATOR + classFile.getElementName(), classFile.getHandleIdentifier(), null) .toASCIIString(); } catch (URISyntaxException e) { return null; } }
/** * Default constructor. * * @param input the class file editor input */ public ClassFileSynchronizer(IClassFileEditorInput input) { fInput= input; IJavaElement parent= fInput.getClassFile().getParent(); while (parent != null && !(parent instanceof IPackageFragmentRoot)) { parent= parent.getParent(); } fPackageFragmentRoot= (IPackageFragmentRoot) parent; }
/** * Default constructor. * * @param input the class file editor input */ public ClassFileSynchronizer(IClassFileEditorInput input) { fInput= input; IJavaElement parent= fInput.getClassFile().getParent(); while (parent != null && !(parent instanceof IPackageFragmentRoot)) { parent= parent.getParent(); } fPackageFragmentRoot= (IPackageFragmentRoot) parent; }
/** * Appends the label for a class file to a {@link StringBuffer}. Considers the CF_* flags. * @param classFile The element to render. * @param flags The rendering flags. Flags with names starting with 'CF_' are considered. * @param buf The buffer to append the resulting label to. */ public static void getClassFileLabel(IClassFile classFile, long flags, StringBuffer buf) { if (getFlag(flags, CF_QUALIFIED)) { IPackageFragment pack= (IPackageFragment) classFile.getParent(); if (!pack.isDefaultPackage()) { getPackageFragmentLabel(pack, (flags & QUALIFIER_FLAGS), buf); buf.append('.'); } } buf.append(classFile.getElementName()); if (getFlag(flags, CF_POST_QUALIFIED)) { buf.append(CONCAT_STRING); getPackageFragmentLabel((IPackageFragment) classFile.getParent(), flags & QUALIFIER_FLAGS, buf); } }
public static String toUri(IClassFile classFile) { if (JavaLanguageServerPlugin.getPreferencesManager() != null && !JavaLanguageServerPlugin.getPreferencesManager().isClientSupportsClassFileContent()) { return null; } String packageName = classFile.getParent().getElementName(); String jarName = classFile.getParent().getParent().getElementName(); String uriString = null; try { uriString = new URI(JDT_SCHEME, "contents", PATH_SEPARATOR + jarName + PATH_SEPARATOR + packageName + PATH_SEPARATOR + classFile.getElementName(), classFile.getHandleIdentifier(), null).toASCIIString(); } catch (URISyntaxException e) { JavaLanguageServerPlugin.logException("Error generating URI for class ", e); } return uriString; }
/** * Appends the label for a class file. Considers the CF_* flags. * * @param classFile the element to render * @param flags the rendering flags. Flags with names starting with 'CF_' are considered. */ public void appendClassFileLabel(IClassFile classFile, long flags) { if (getFlag(flags, JavaElementLabels.CF_QUALIFIED)) { IPackageFragment pack= (IPackageFragment) classFile.getParent(); if (!pack.isDefaultPackage()) { appendPackageFragmentLabel(pack, (flags & QUALIFIER_FLAGS)); fBuilder.append('.'); } } fBuilder.append(classFile.getElementName()); if (getFlag(flags, JavaElementLabels.CF_POST_QUALIFIED)) { fBuilder.append(JavaElementLabels.CONCAT_STRING); appendPackageFragmentLabel((IPackageFragment) classFile.getParent(), flags & QUALIFIER_FLAGS); } }
protected IJavaElement findElementToSelect(IJavaElement je) { if (je == null) return null; switch (je.getElementType()) { case IJavaElement.PACKAGE_FRAGMENT: return je; case IJavaElement.COMPILATION_UNIT: return ((ICompilationUnit)je).getParent(); case IJavaElement.CLASS_FILE: return ((IClassFile)je).getParent(); case IJavaElement.TYPE: return ((IType)je).getPackageFragment(); default: return findElementToSelect(je.getParent()); } }
/** * <jar path>/<package name>/<file name> */ public IPath getFullPath() { IPackageFragment pkg = (IPackageFragment)classFile.getParent(); IPackageFragmentRoot jar = (IPackageFragmentRoot)pkg.getParent(); String pkgName = pkg.getElementName(); IPath jarPath = jar.getPath(); IPath filePath = jarPath.append(pkgName).append(getName()); return filePath; }
@Override protected IJavaElement findElementToSelect(IJavaElement je) { if (je == null) return null; switch (je.getElementType()) { case IJavaElement.PACKAGE_FRAGMENT: return je; case IJavaElement.COMPILATION_UNIT: return ((ICompilationUnit)je).getParent(); case IJavaElement.CLASS_FILE: return ((IClassFile)je).getParent(); case IJavaElement.TYPE: return ((IType)je).getPackageFragment(); default: return findElementToSelect(je.getParent()); } }
@Override protected IJavaElement findElementToSelect(IJavaElement je) { if (je == null) return null; switch (je.getElementType()) { case IJavaElement.PACKAGE_FRAGMENT: return je; case IJavaElement.COMPILATION_UNIT: return ((ICompilationUnit)je).getParent(); case IJavaElement.CLASS_FILE: return ((IClassFile)je).getParent(); case IJavaElement.TYPE: return ((IType)je).getPackageFragment(); default: return findElementToSelect(je.getParent()); } }
/** * Appends the label for a class file. Considers the CF_* flags. * * @param classFile the element to render * @param flags the rendering flags. Flags with names starting with 'CF_' are considered. */ public void appendClassFileLabel(IClassFile classFile, long flags) { if (getFlag(flags, JavaElementLabelsCore.CF_QUALIFIED)) { IPackageFragment pack= (IPackageFragment) classFile.getParent(); if (!pack.isDefaultPackage()) { appendPackageFragmentLabel(pack, (flags & QUALIFIER_FLAGS)); fBuffer.append('.'); } } fBuffer.append(classFile.getElementName()); if (getFlag(flags, JavaElementLabelsCore.CF_POST_QUALIFIED)) { int offset= fBuffer.length(); fBuffer.append(JavaElementLabelsCore.CONCAT_STRING); appendPackageFragmentLabel((IPackageFragment) classFile.getParent(), flags & QUALIFIER_FLAGS); if (getFlag(flags, JavaElementLabelsCore.COLORIZE)) { setQualifierStyle(offset); } } }