Java 类com.intellij.lang.ant.dom.AntDomProject 实例源码

项目:consulo-apache-ant    文件:AntSupport.java   
@Nullable
public static AntDomProject getAntDomProjectForceAntFile(PsiFile psiFile)
{
    if(psiFile instanceof XmlFile)
    {
        final DomManager domManager = DomManager.getDomManager(psiFile.getProject());
        DomFileElement<AntDomProject> fileElement = domManager.getFileElement((XmlFile) psiFile, AntDomProject.class);
        if(fileElement == null)
        {
            ForcedAntFileAttribute.forceAntFile(psiFile.getVirtualFile(), true);
            fileElement = domManager.getFileElement((XmlFile) psiFile, AntDomProject.class);
        }
        return fileElement != null ? fileElement.getRootElement() : null;
    }
    return null;
}
项目:intellij-ce-playground    文件:AntBuildTargetImpl.java   
@Nullable
public BuildTask findTask(final String taskName) {
  final PsiFile psiFile = PsiManager.getInstance(myProject).findFile(myFile);
  final AntDomProject domProject = AntSupport.getAntDomProject(psiFile);
  if (domProject != null) {
    final AntDomTarget antTarget = domProject.findDeclaredTarget(myName);
    if (antTarget != null) {
      final Ref<AntDomElement> result = new Ref<AntDomElement>(null);
      antTarget.accept(new AntDomRecursiveVisitor() {
        public void visitAntDomElement(AntDomElement element) {
          if (result.get() != null) {
            return;
          }
          if (element.isTask() && taskName.equals(element.getXmlElementName())) {
            result.set(element);
            return;
          }
          super.visitAntDomElement(element);
        }
      });
      final AntDomElement task = result.get();
      if (task != null) {
        return new BuildTask(this, task);
      }
    }
  }
  return null;
}
项目:intellij-ce-playground    文件:AntSupport.java   
@Nullable
public static AntDomProject getAntDomProject(PsiFile psiFile) {
  if (psiFile instanceof XmlFile) {
    final DomManager domManager = DomManager.getDomManager(psiFile.getProject());
    final DomFileElement<AntDomProject> fileElement = domManager.getFileElement((XmlFile)psiFile, AntDomProject.class);
    return fileElement != null? fileElement.getRootElement() : null;
  }
  return null;
}
项目:intellij-ce-playground    文件:AntSupport.java   
@Nullable
public static AntDomProject getAntDomProjectForceAntFile(PsiFile psiFile) {
  if (psiFile instanceof XmlFile) {
    final DomManager domManager = DomManager.getDomManager(psiFile.getProject());
    DomFileElement<AntDomProject> fileElement = domManager.getFileElement((XmlFile)psiFile, AntDomProject.class);
    if (fileElement == null) {
      ForcedAntFileAttribute.forceAntFile(psiFile.getVirtualFile(), true);
      fileElement = domManager.getFileElement((XmlFile)psiFile, AntDomProject.class);
    }
    return fileElement != null? fileElement.getRootElement() : null;
  }
  return null;
}
项目:tools-idea    文件:AntBuildTargetImpl.java   
@Nullable
public BuildTask findTask(final String taskName) {
  final PsiFile psiFile = PsiManager.getInstance(myProject).findFile(myFile);
  final AntDomProject domProject = AntSupport.getAntDomProject(psiFile);
  if (domProject != null) {
    final AntDomTarget antTarget = domProject.findDeclaredTarget(myName);
    if (antTarget != null) {
      final Ref<AntDomElement> result = new Ref<AntDomElement>(null);
      antTarget.accept(new AntDomRecursiveVisitor() {
        public void visitAntDomElement(AntDomElement element) {
          if (result.get() != null) {
            return;
          }
          if (element.isTask() && taskName.equals(element.getXmlElementName())) {
            result.set(element);
            return;
          }
          super.visitAntDomElement(element);
        }
      });
      final AntDomElement task = result.get();
      if (task != null) {
        return new BuildTask(this, task);
      }
    }
  }
  return null;
}
项目:tools-idea    文件:AntSupport.java   
@Nullable
public static AntDomProject getAntDomProject(PsiFile psiFile) {
  if (psiFile instanceof XmlFile) {
    final DomManager domManager = DomManager.getDomManager(psiFile.getProject());
    final DomFileElement<AntDomProject> fileElement = domManager.getFileElement((XmlFile)psiFile, AntDomProject.class);
    return fileElement != null? fileElement.getRootElement() : null;
  }
  return null;
}
项目:tools-idea    文件:AntSupport.java   
@Nullable
public static AntDomProject getAntDomProjectForceAntFile(PsiFile psiFile) {
  if (psiFile instanceof XmlFile) {
    final DomManager domManager = DomManager.getDomManager(psiFile.getProject());
    DomFileElement<AntDomProject> fileElement = domManager.getFileElement((XmlFile)psiFile, AntDomProject.class);
    if (fileElement == null) {
      ForcedAntFileAttribute.forceAntFile(psiFile.getVirtualFile(), true);
      fileElement = domManager.getFileElement((XmlFile)psiFile, AntDomProject.class);
    }
    return fileElement != null? fileElement.getRootElement() : null;
  }
  return null;
}
项目:consulo-apache-ant    文件:AntBuildTargetImpl.java   
@Nullable
public BuildTask findTask(final String taskName) {
  final PsiFile psiFile = PsiManager.getInstance(myProject).findFile(myFile);
  final AntDomProject domProject = AntSupport.getAntDomProject(psiFile);
  if (domProject != null) {
    final AntDomTarget antTarget = domProject.findDeclaredTarget(myName);
    if (antTarget != null) {
      final Ref<AntDomElement> result = new Ref<AntDomElement>(null);
      antTarget.accept(new AntDomRecursiveVisitor() {
        public void visitAntDomElement(AntDomElement element) {
          if (result.get() != null) {
            return;
          }
          if (element.isTask() && taskName.equals(element.getXmlElementName())) {
            result.set(element);
            return;
          }
          super.visitAntDomElement(element);
        }
      });
      final AntDomElement task = result.get();
      if (task != null) {
        return new BuildTask(this, task);
      }
    }
  }
  return null;
}
项目:consulo-apache-ant    文件:AntSupport.java   
@Nullable
public static AntDomProject getAntDomProject(PsiFile psiFile)
{
    if(psiFile instanceof XmlFile)
    {
        final DomManager domManager = DomManager.getDomManager(psiFile.getProject());
        final DomFileElement<AntDomProject> fileElement = domManager.getFileElement((XmlFile) psiFile, AntDomProject.class);
        return fileElement != null ? fileElement.getRootElement() : null;
    }
    return null;
}
项目:intellij-ce-playground    文件:AntInspection.java   
protected AntInspection() {
  super(AntDomProject.class);
}
项目:intellij-ce-playground    文件:AntDomDocumentationProvider.java   
@Nullable
private static VirtualFile getHelpFile(final PsiElement element) {
  final XmlTag xmlTag = PsiTreeUtil.getParentOfType(element, XmlTag.class);
  if (xmlTag == null) {
    return null;
  }
  final AntDomElement antElement = AntSupport.getAntDomElement(xmlTag);
  if (antElement == null) {
    return null;
  }
  final AntDomProject antProject = antElement.getAntProject();
  if (antProject == null) {
    return null;
  }
  final AntInstallation installation = antProject.getAntInstallation();
  if (installation == null) {
    return null; // not configured properly and bundled installation missing
  }
  final String antHomeDir = AntInstallation.HOME_DIR.get(installation.getProperties());

  if (antHomeDir == null) {
    return null;
  }

  @NonNls String path = antHomeDir + "/docs/manual";
  String url;
  if (new File(path).exists()) {
    url = VirtualFileManager.constructUrl(LocalFileSystem.PROTOCOL, FileUtil.toSystemIndependentName(path));
  }
  else {
    path = antHomeDir + "/docs.zip";
    if (new File(path).exists()) {
      url = VirtualFileManager.constructUrl(JarFileSystem.PROTOCOL, FileUtil.toSystemIndependentName(path) + JarFileSystem.JAR_SEPARATOR + "docs/manual");
    }
    else {
      return null;
    }
  }

  final VirtualFile documentationRoot = VirtualFileManager.getInstance().findFileByUrl(url);
  if (documentationRoot == null) {
    return null;
  }

  return getHelpFile(antElement, documentationRoot);
}
项目:tools-idea    文件:AntInspection.java   
protected AntInspection() {
  super(AntDomProject.class);
}
项目:tools-idea    文件:AntDomDocumentationProvider.java   
@Nullable
private static VirtualFile getHelpFile(final PsiElement element) {
  final XmlTag xmlTag = PsiTreeUtil.getParentOfType(element, XmlTag.class);
  if (xmlTag == null) {
    return null;
  }
  final AntDomElement antElement = AntSupport.getAntDomElement(xmlTag);
  if (antElement == null) {
    return null;
  }
  final AntDomProject antProject = antElement.getAntProject();
  if (antProject == null) {
    return null;
  }
  final AntInstallation installation = antProject.getAntInstallation();
  if (installation == null) {
    return null; // not configured properly and bundled installation missing
  }
  final String antHomeDir = AntInstallation.HOME_DIR.get(installation.getProperties());

  if (antHomeDir == null) {
    return null;
  }

  @NonNls String path = antHomeDir + "/docs/manual";
  String url;
  if (new File(path).exists()) {
    url = VirtualFileManager.constructUrl(LocalFileSystem.PROTOCOL, FileUtil.toSystemIndependentName(path));
  }
  else {
    path = antHomeDir + "/docs.zip";
    if (new File(path).exists()) {
      url = VirtualFileManager.constructUrl(JarFileSystem.PROTOCOL, FileUtil.toSystemIndependentName(path) + JarFileSystem.JAR_SEPARATOR + "docs/manual");
    }
    else {
      return null;
    }
  }

  final VirtualFile documentationRoot = VirtualFileManager.getInstance().findFileByUrl(url);
  if (documentationRoot == null) {
    return null;
  }

  return getHelpFile(antElement, documentationRoot);
}
项目:consulo-apache-ant    文件:AntInspection.java   
protected AntInspection() {
  super(AntDomProject.class);
}
项目:consulo-apache-ant    文件:AntDomDocumentationProvider.java   
@Nullable
private static VirtualFile getHelpFile(final PsiElement element) {
  final XmlTag xmlTag = PsiTreeUtil.getParentOfType(element, XmlTag.class);
  if (xmlTag == null) {
    return null;
  }
  final AntDomElement antElement = AntSupport.getAntDomElement(xmlTag);
  if (antElement == null) {
    return null;
  }
  final AntDomProject antProject = antElement.getAntProject();
  if (antProject == null) {
    return null;
  }
  final Sdk installation = antProject.getAntInstallation();
  if (installation == null) {
    return null; // not configured properly and bundled installation missing
  }
  final String antHomeDir = installation.getHomePath();

  if (antHomeDir == null) {
    return null;
  }

  @NonNls String path = antHomeDir + "/docs/manual";
  String url;
  if (new File(path).exists()) {
    url = VirtualFileManager.constructUrl(LocalFileSystem.PROTOCOL, FileUtil.toSystemIndependentName(path));
  }
  else {
    path = antHomeDir + "/docs.zip";
    if (new File(path).exists()) {
      url = VirtualFileManager.constructUrl(ZipArchiveFileType.PROTOCOL, FileUtil.toSystemIndependentName(path) + URLUtil.ARCHIVE_SEPARATOR + "docs/manual");
    }
    else {
      return null;
    }
  }

  final VirtualFile documentationRoot = VirtualFileManager.getInstance().findFileByUrl(url);
  if (documentationRoot == null) {
    return null;
  }

  return getHelpFile(antElement, documentationRoot);
}
项目:intellij-ce-playground    文件:AntBuildModelBase.java   
@Nullable AntDomProject getAntProject();
项目:tools-idea    文件:AntBuildModelBase.java   
@Nullable AntDomProject getAntProject();
项目:consulo-apache-ant    文件:AntBuildModelBase.java   
@Nullable AntDomProject getAntProject();