private void getFilesRecursively(
     VirtualFile file, boolean compileTimeOnly, Set<VirtualFile> result) {
   if (result.contains(file)) return;
   PsiFile psiFile = myPsiManager.findFile(file);
   if (psiFile == null) return;
   VirtualFile[] includes =
       compileTimeOnly
           ? myCachedValuesManager.getParameterizedCachedValue(
               psiFile, COMPILE_TIME_KEY, COMPILE_TIME_PROVIDER, false, psiFile)
           : myCachedValuesManager.getParameterizedCachedValue(
               psiFile, RUNTIME_KEY, RUNTIME_PROVIDER, false, psiFile);
   if (includes.length != 0) {
     result.addAll(Arrays.asList(includes));
     for (VirtualFile include : includes) {
       getFilesRecursively(include, compileTimeOnly, result);
     }
   }
 }
 static {
   IGNORED_URIS.add(XsltSupport.XSLT_NS);
   IGNORED_URIS.addAll(XmlUtil.ourSchemaUrisList);
 }