Package org.eclipse.jdt.core

Examples of org.eclipse.jdt.core.IClasspathEntry


              return JavaModelStatus.VERIFIED_OK;
            }
            IClasspathEntry[] containerEntries = container.getClasspathEntries();
            if (containerEntries != null){
              for (int i = 0, length = containerEntries.length; i < length; i++){
                IClasspathEntry containerEntry = containerEntries[i];
                int kind = containerEntry == null ? 0 : containerEntry.getEntryKind();
                if (containerEntry == null
                  || kind == IClasspathEntry.CPE_SOURCE
                  || kind == IClasspathEntry.CPE_VARIABLE
                  || kind == IClasspathEntry.CPE_CONTAINER){
                    return new JavaModelStatus(IJavaModelStatusConstants.INVALID_CP_CONTAINER_ENTRY, project, path);
View Full Code Here


    for (int i = 0; i < length - 1; i++) {
      if (!otherClasspathWithOutput[i].equals(newClasspath[i]))
        return false;
    }
    // compare binary outputs
    IClasspathEntry output = otherClasspathWithOutput[length - 1];
    if (output.getContentKind() != ClasspathEntry.K_OUTPUT
        || !output.getPath().equals(newOutputLocation))
      return false;
    return true;
  }
View Full Code Here

      return false;
    }

    IPath fullPath = resource.getFullPath();
    IPath innerMostOutput = output.isPrefixOf(fullPath) ? output : null;
    IClasspathEntry innerMostEntry = null;
    ExternalFoldersManager foldersManager = JavaModelManager.getExternalManager();
    for (int j = 0, cpLength = classpath.length; j < cpLength; j++) {
      IClasspathEntry entry = classpath[j];

      IPath entryPath = entry.getPath();
      if (entry.getEntryKind() == IClasspathEntry.CPE_LIBRARY) {
        IResource linkedFolder = foldersManager.getFolder(entryPath);
        if (linkedFolder != null)
          entryPath = linkedFolder.getFullPath();
      }
      if ((innerMostEntry == null || innerMostEntry.getPath().isPrefixOf(entryPath))
View Full Code Here

   *
   */
  public IClasspathEntry[][] decodeClasspath(String xmlClasspath, Map unknownElements) throws IOException, ClasspathEntry.AssertionFailedException {

    ArrayList paths = new ArrayList();
    IClasspathEntry defaultOutput = null;
    StringReader reader = new StringReader(xmlClasspath);
    Element cpElement;
    try {
      DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
      cpElement = parser.parse(new InputSource(reader)).getDocumentElement();
    } catch (SAXException e) {
      throw new IOException(Messages.file_badFormat);
    } catch (ParserConfigurationException e) {
      throw new IOException(Messages.file_badFormat);
    } finally {
      reader.close();
    }

    if (!cpElement.getNodeName().equalsIgnoreCase("classpath")) { //$NON-NLS-1$
      throw new IOException(Messages.file_badFormat);
    }
    NodeList list = cpElement.getElementsByTagName(ClasspathEntry.TAG_CLASSPATHENTRY);
    int length = list.getLength();

    for (int i = 0; i < length; ++i) {
      Node node = list.item(i);
      if (node.getNodeType() == Node.ELEMENT_NODE) {
        IClasspathEntry entry = ClasspathEntry.elementDecode((Element)node, this, unknownElements);
        if (entry != null){
          if (entry.getContentKind() == ClasspathEntry.K_OUTPUT) {
            defaultOutput = entry; // separate output
          } else {
            paths.add(entry);
          }
        }
      }
    }
    int pathSize = paths.size();
    IClasspathEntry[][] entries = new IClasspathEntry[2][];
    entries[0] = new IClasspathEntry[pathSize + (defaultOutput == null ? 0 : 1)];
    paths.toArray(entries[0]);
    if (defaultOutput != null) entries[0][pathSize] = defaultOutput; // ensure output is last item
   
    paths.clear();
    list = cpElement.getElementsByTagName(ClasspathEntry.TAG_REFERENCED_ENTRY);
    length = list.getLength();

    for (int i = 0; i < length; ++i) {
      Node node = list.item(i);
      if (node.getNodeType() == Node.ELEMENT_NODE) {
        IClasspathEntry entry = ClasspathEntry.elementDecode((Element)node, this, unknownElements);
        if (entry != null){
          paths.add(entry);
        }
      }
    }
View Full Code Here

    if (perProjectInfo == null)
      return null;
    Map rootPathToResolvedEntries = perProjectInfo.rootPathToResolvedEntries;
    if (rootPathToResolvedEntries == null)
      return null;
    IClasspathEntry classpathEntry = (IClasspathEntry) rootPathToResolvedEntries.get(path);
    if (classpathEntry == null) {
      path = getProject().getWorkspace().getRoot().getLocation().append(path);
      classpathEntry = (IClasspathEntry) rootPathToResolvedEntries.get(path);
    }
    return classpathEntry;
View Full Code Here

    IPath elementPath = element.getPath();

    // first look at unresolved entries
    int length = rawClasspath.length;
    for (int i = 0; i < length; i++) {
      IClasspathEntry entry = rawClasspath[i];
      switch (entry.getEntryKind()) {
        case IClasspathEntry.CPE_LIBRARY:
        case IClasspathEntry.CPE_PROJECT:
        case IClasspathEntry.CPE_SOURCE:
          if (isOnClasspathEntry(elementPath, isFolderPath, isPackageFragmentRoot, entry))
            return true;
View Full Code Here

      classpath = this.getResolvedClasspath();
    } catch(JavaModelException e){
      return false; // not a Java project
    }
    for (int i = 0; i < classpath.length; i++) {
      IClasspathEntry entry = classpath[i];
      IPath entryPath = entry.getPath();
      if (entryPath.equals(exactPath)) { // package fragment roots must match exactly entry pathes (no exclusion there)
        return true;
      }
      // https://bugs.eclipse.org/bugs/show_bug.cgi?id=276373
      // When a classpath entry is absolute, convert the resource's relative path to a file system path and compare
View Full Code Here

  public String[] projectPrerequisites(IClasspathEntry[] resolvedClasspath)
    throws JavaModelException {

    ArrayList prerequisites = new ArrayList();
    for (int i = 0, length = resolvedClasspath.length; i < length; i++) {
      IClasspathEntry entry = resolvedClasspath[i];
      if (entry.getEntryKind() == IClasspathEntry.CPE_PROJECT) {
        prerequisites.add(entry.getPath().lastSegment());
      }
    }
    int size = prerequisites.size();
    if (size == 0) {
      return NO_PREREQUISITES;
View Full Code Here

      return defaultOutputLocation();

    // extract the output location
    IPath outputLocation = null;
    if (classpath[0].length > 0) {
      IClasspathEntry entry = classpath[0][classpath[0].length - 1];
      if (entry.getContentKind() == ClasspathEntry.K_OUTPUT) {
        outputLocation = entry.getPath();
      }
    }
    return outputLocation;
  }
View Full Code Here

    if (classpath[0] == JavaProject.INVALID_CLASSPATH)
      return defaultClasspath();

    // discard the output location
    if (classpath[0].length > 0) {
      IClasspathEntry entry = classpath[0][classpath[0].length - 1];
      if (entry.getContentKind() == ClasspathEntry.K_OUTPUT) {
        IClasspathEntry[] copy = new IClasspathEntry[classpath[0].length - 1];
        System.arraycopy(classpath[0], 0, copy, 0, copy.length);
        classpath[0] = copy;
      }
    }
View Full Code Here

TOP

Related Classes of org.eclipse.jdt.core.IClasspathEntry

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.