当前位置: 首页>>代码示例>>Java>>正文


Java LocalFileSystem类代码示例

本文整理汇总了Java中com.intellij.openapi.vfs.LocalFileSystem的典型用法代码示例。如果您正苦于以下问题:Java LocalFileSystem类的具体用法?Java LocalFileSystem怎么用?Java LocalFileSystem使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


LocalFileSystem类属于com.intellij.openapi.vfs包,在下文中一共展示了LocalFileSystem类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: findProject

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Nullable
private Project findProject(String file) {
  LocalFileSystem localFileSystem = LocalFileSystem.getInstance();
  ProjectLocator projectLocator = ProjectLocator.getInstance();
  AtomicReference<Project> ret = new AtomicReference<>();
  FileUtil.processFilesRecursively(
      new File(file),
      (f) -> {
        VirtualFile vf = localFileSystem.findFileByIoFile(f);
        if (vf != null) {
          ret.set(projectLocator.guessProjectForFile(vf));
          return false;
        }
        return true;
      });
  return ret.get();
}
 
开发者ID:google,项目名称:ijaas,代码行数:18,代码来源:JavaGetImportCandidatesHandler.java

示例2: getDictionaryFileFromInclude

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Nullable
private static XmlFile getDictionaryFileFromInclude(@NotNull Project project, IncludedXmlTag xmlIncludeTag) {
  XmlFile xmlFile = null;
  XmlElement origXmlElement = xmlIncludeTag.getOriginal();
  PsiFile origPsiFile = origXmlElement != null ? origXmlElement.getContainingFile() : null;
  if (origPsiFile instanceof XmlFile) {
    xmlFile = (XmlFile) origPsiFile;
    AppleScriptSystemDictionaryRegistryService dictionaryService = ServiceManager.getService(AppleScriptSystemDictionaryRegistryService
        .class);
    VirtualFile vFile = origPsiFile.getVirtualFile();
    DictionaryInfo dInfo = dictionaryService.getDictionaryInfoByApplicationPath(vFile.getPath());
    if (dInfo != null) {
      File ioFile = dInfo.getDictionaryFile();
      if (ioFile.exists()) {
        vFile = LocalFileSystem.getInstance().findFileByIoFile(ioFile);
        if (vFile == null || !vFile.isValid()) return null;

        PsiFile psiFile = PsiManager.getInstance(project).findFile(vFile);
        xmlFile = (XmlFile) psiFile;
      }
    }
  }
  return xmlFile;
}
 
开发者ID:ant-druha,项目名称:AppleScript-IDEA,代码行数:25,代码来源:SDEF_Parser.java

示例3: createDictionaryFromInfo

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Nullable
private ApplicationDictionary createDictionaryFromInfo(final @NotNull DictionaryInfo dInfo) {
  if (!dInfo.isInitialized()) {
    //dictionary terms must be ridden from the dictionary file before creating a PSI for it
    LOG.error("Attempt to create dictionary for not initialized Dictionary Info for application" + dInfo.getApplicationName());
    return null;
  }
  String applicationName = dInfo.getApplicationName();
  VirtualFile vFile = LocalFileSystem.getInstance().findFileByIoFile(dInfo.getDictionaryFile());
  if (vFile != null && vFile.isValid()) {
    PsiFile psiFile = PsiManager.getInstance(project).findFile(vFile);
    XmlFile xmlFile = (XmlFile) psiFile;
    if (xmlFile != null) {
      ApplicationDictionary dictionary = new ApplicationDictionaryImpl(project, xmlFile, applicationName, dInfo.getApplicationFile());
      dictionaryMap.put(applicationName, dictionary);
      return dictionary;
    }
  }
  LOG.warn("Failed to create dictionary from info for application: " + applicationName + ". Reason: file is null");
  return null;
}
 
开发者ID:ant-druha,项目名称:AppleScript-IDEA,代码行数:22,代码来源:AppleScriptProjectDictionaryService.java

示例4: openFileInPanel

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
/**
 * 打开类文件
 *
 * @param filePath
 * @param project
 */
public static void openFileInPanel(final String filePath, final Project project) {
    ApplicationManager.getApplication().invokeLater(new Runnable() {
        @Override
        public void run() {
            VirtualFile file = LocalFileSystem.getInstance().refreshAndFindFileByPath(filePath);
            if (file != null && file.isValid()) {
                FileEditorProvider[] providers = FileEditorProviderManager.getInstance()
                        .getProviders(project, file);
                if (providers.length != 0) {
                    OpenFileDescriptor descriptor = new OpenFileDescriptor(project, file);
                    FileEditorManager.getInstance(project).openTextEditor(descriptor, false);
                }
            }
        }
    });
}
 
开发者ID:pengwei1024,项目名称:AndroidSourceViewer,代码行数:23,代码来源:Utils.java

示例5: diff

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
/**
 * 调用 Android 文件对比
 * @param project
 * @param f1
 * @param f2
 */
public static void diff(final Project project, final File f1, final File f2) {
    ApplicationManager.getApplication().invokeLater(new Runnable() {
        @Override
        public void run() {
            try {
                VirtualFile v1 = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(f1);
                Document document1 = FileDocumentManager.getInstance().getDocument(v1);
                FileDocumentContentImpl fileDocumentContent1 = new FileDocumentContentImpl(project, document1, v1);
                VirtualFile v2 = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(f2);
                Document document2 = FileDocumentManager.getInstance().getDocument(v2);
                FileDocumentContentImpl fileDocumentContent2 = new FileDocumentContentImpl(project, document2, v2);
                SimpleDiffRequest simpleDiffRequest = new SimpleDiffRequest(Constant.TITLE, fileDocumentContent1, fileDocumentContent2,
                        f1.getName(), f2.getName());
                DiffManager.getInstance().showDiff(project, simpleDiffRequest);
            } catch (Exception e) {
                NotificationUtils.errorNotification("Diff Source Error:" + e.getMessage());
            }
        }
    });
}
 
开发者ID:pengwei1024,项目名称:AndroidSourceViewer,代码行数:27,代码来源:DiffSourceAction.java

示例6: removeAllFiles

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Override
public void removeAllFiles(@NotNull final Collection<File> files) throws IOException {
    Validate.notNull(files);

    if (files.isEmpty()) {
        return;
    }

    final LocalFileSystem localFileSystem = LocalFileSystem.getInstance();

    for (File file : files) {
        final VirtualFile virtualFile = localFileSystem.findFileByIoFile(file);

        if (null != virtualFile) {
            ApplicationManager.getApplication().runWriteAction(new RemoveFileComputable(virtualFile));
        } else {
            FileUtil.delete(file);
        }
    }
}
 
开发者ID:AlexanderBartash,项目名称:hybris-integration-intellij-idea-plugin,代码行数:21,代码来源:DefaultVirtualFileSystemService.java

示例7: addDetectedSdk

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
private static Sdk addDetectedSdk(@NotNull Sdk sdk, @NotNull Project project) {
  final ProjectSdksModel model = PyConfigurableInterpreterList.getInstance(project).getModel();
  final String name = sdk.getName();
  VirtualFile sdkHome = WriteAction.compute(() -> LocalFileSystem.getInstance().refreshAndFindFileByPath(name));
  sdk = SdkConfigurationUtil.createAndAddSDK(sdkHome.getPath(), PythonSdkType.getInstance());
  if (sdk != null) {
    PythonSdkUpdater.updateOrShowError(sdk, null, project, null);
  }

  model.addSdk(sdk);
  try {
    model.apply();
  }
  catch (ConfigurationException exception) {
    LOG.error("Error adding detected python interpreter " + exception.getMessage());
  }
  return sdk;
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:19,代码来源:PyStudyDirectoryProjectGenerator.java

示例8: getCurrentTaskFilePath

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Nullable
private String getCurrentTaskFilePath() {
  String textFile = null;
  for (Map.Entry<String, TaskFile> entry : myTask.getTaskFiles().entrySet()) {
    String path = getTaskFilePath(entry.getKey());
    if (!entry.getValue().getActivePlaceholders().isEmpty()) {
      return path;
    }
    VirtualFile virtualFile = LocalFileSystem.getInstance().findFileByPath(path);
    if (virtualFile == null) {
      continue;
    }
    if (TextEditorProvider.isTextFile(virtualFile)) {
      textFile = path;
    }
  }
  return textFile;
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:19,代码来源:PyCCCommandLineState.java

示例9: checkConfiguration

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Override
public void checkConfiguration() throws RuntimeConfigurationException {
  super.checkConfiguration();
  String message = "Select valid path to the file with tests";
  VirtualFile testsFile = LocalFileSystem.getInstance().findFileByPath(myPathToTest);
  if (testsFile == null) {
    throw new RuntimeConfigurationException(message);
  }
  VirtualFile taskDir = StudyUtils.getTaskDir(testsFile);
  if (taskDir == null) {
    throw new RuntimeConfigurationException(message);
  }
  if (StudyUtils.getTask(myProject, taskDir) == null) {
    throw new RuntimeConfigurationException(message);
  }
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:17,代码来源:PyCCRunTestConfiguration.java

示例10: getAllAnswerTaskFiles

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
private static List<VirtualFile> getAllAnswerTaskFiles(@NotNull Course course, @NotNull Project project) {
  List<VirtualFile> result = new ArrayList<>();
  for (Lesson lesson : course.getLessons()) {
    for (Task task : lesson.getTaskList()) {
      for (Map.Entry<String, TaskFile> entry : task.getTaskFiles().entrySet()) {
        String name = entry.getKey();
        String answerName = FileUtil.getNameWithoutExtension(name) + CCUtils.ANSWER_EXTENSION_DOTTED + FileUtilRt.getExtension(name);
        String taskPath = FileUtil.join(project.getBasePath(), EduNames.LESSON + lesson.getIndex(), EduNames.TASK + task.getIndex());
        VirtualFile taskFile = LocalFileSystem.getInstance().findFileByPath(FileUtil.join(taskPath, answerName));
        if (taskFile == null) {
          taskFile = LocalFileSystem.getInstance().findFileByPath(FileUtil.join(taskPath, EduNames.SRC, answerName));
        }
        if (taskFile != null) {
          result.add(taskFile);
        }
      }
    }
  }
  return result;
}
 
开发者ID:medvector,项目名称:educational-plugin,代码行数:21,代码来源:CCProjectComponent.java

示例11: actionPerformed

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Override
public void actionPerformed(AnActionEvent anActionEvent) {
    Project project = anActionEvent.getProject();
    if (project != null) {
        String currentApkPath = PropertiesManager.getData(project, PropertyKeys.APK_PATH);

        VirtualFile fileToSelectOnCreate =
                TextUtils.isEmpty(currentApkPath)
                        ? project.getBaseDir()
                        : LocalFileSystem.getInstance().findFileByPath(currentApkPath);

        VirtualFile apkFile = new FileChooserDialogManager.Builder(project, fileToSelectOnCreate)
                .setFileTypes(FileTypes.FILE)
                .setTitle(Strings.TITLE_ASK_APK_FILE)
                .setDescription(Strings.MESSAGE_ASK_APK_FILE)
                .withFileFilter("apk")
                .create()
                .getSelectedFile();

        if (apkFile != null) {
            PropertiesManager.putData(project, PropertyKeys.APK_PATH, apkFile.getPath());
        }
    }
}
 
开发者ID:kaygisiz,项目名称:Dependency-Injection-Graph,代码行数:25,代码来源:SetApkPathAction.java

示例12: onSettingsChange

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Override
@SuppressWarnings("ConstantConditions")
public void onSettingsChange() {
    prepareTemplateSettings();

    for (IdeFrame frame : WindowManager.getInstance().getAllProjectFrames()) {
        if (frame.getProject() != null) {
            String projectTitle = getProjectTitle(frame.getProject());
            ((IdeFrameImpl)frame).setTitle(projectTitle);

            try {
                File currentFile = (File)((IdeFrameImpl) frame).getRootPane().getClientProperty("Window.documentFile");
                VirtualFile virtualFile = LocalFileSystem.getInstance().findFileByIoFile(currentFile);
                IdeFrameImpl.updateTitle((IdeFrameImpl) frame, projectTitle, getFileTitle(frame.getProject(), virtualFile), currentFile);
            } catch (Exception e) {
                IdeFrameImpl.updateTitle((IdeFrameImpl) frame, projectTitle, null, null);
            }
        }
    }
}
 
开发者ID:mabdurrahman,项目名称:custom-title-plugin,代码行数:21,代码来源:CustomFrameTitleBuilder.java

示例13: validate

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Override
    public boolean validate() throws ConfigurationException {
        if (form.getGravDirectory().isEmpty()) {
            form.showHint(true);
            throw new ConfigurationException("Path pointing to Grav installation is empty");
        } else {
            String file = form.getGravDirectory();
            VirtualFile vf = LocalFileSystem.getInstance().findFileByIoFile(new File(file));
            if (vf == null) {
                form.showHint(true);
                throw new ConfigurationException("Path to Grav installation does not exist");
            } else {
                if (!GravSdkType.isValidGravSDK(vf)) {
                    form.showHint(true);
                    throw new ConfigurationException("Grav installation isn't valid");
                }
            }
        }
//        if (StringUtil.isEmpty(sdkPanel.getSdkName())) {
//            throw new ConfigurationException("Specify Grav SDK");
//        }
        form.showHint(false);
        return super.validate();
    }
 
开发者ID:PioBeat,项目名称:GravSupport,代码行数:25,代码来源:GravIntroWizardStep.java

示例14: validate0

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
private int validate0() {
    if (form.getGravDirectory().isEmpty()) {
        form.showHint(true);
        return -1;//new ValidationInfo("Path pointing to Grav installation is empty");
    } else {
        String file = form.getGravDirectory();
        VirtualFile vf = LocalFileSystem.getInstance().findFileByIoFile(new File(file));
        if (vf == null) {
            form.showHint(true);
            return -2; //new ValidationInfo("Path to Grav installation does not exist");
        } else {
            if (!GravSdkType.isValidGravSDK(vf)) {
                form.showHint(true);
                return -3; //new ValidationInfo("Grav installation isn't valid");
            }
        }
    }
    form.showHint(false);
    return 0;
}
 
开发者ID:PioBeat,项目名称:GravSupport,代码行数:21,代码来源:GravInstallerGeneratorPeer.java

示例15: generateProject

import com.intellij.openapi.vfs.LocalFileSystem; //导入依赖的package包/类
@Override
public void generateProject(@NotNull Project project, @NotNull VirtualFile baseDir, @NotNull GravProjectSettings settings, @NotNull Module module) {
    StatusBar statusBar = WindowManager.getInstance().getStatusBar(project);
    VirtualFile vf = LocalFileSystem.getInstance().findFileByIoFile(new File(settings.gravInstallationPath));
    if (vf == null || !GravSdkType.isValidGravSDK(vf)) {
        JBPopupFactory.getInstance()
                .createHtmlTextBalloonBuilder("Project couldn't be created because Grav Installation isn't valid", MessageType.ERROR, null)
                .setFadeoutTime(3500)
                .createBalloon()
                .show(RelativePoint.getSouthEastOf(statusBar.getComponent()), Balloon.Position.above);
    } else {
        storage.setDefaultGravDownloadPath(settings.gravInstallationPath);
        PropertiesComponent.getInstance().setValue(LAST_USED_GRAV_HOME, new File(settings.gravInstallationPath).getAbsolutePath());
        GravProjectGeneratorUtil projectGenerator = new GravProjectGeneratorUtil();
        projectGenerator.generateProject(project, baseDir, settings, module);
        try {
            List<String> includePath = new ArrayList<>();
            includePath.add(baseDir.getPath());
            PhpIncludePathManager.getInstance(project).setIncludePath(includePath);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
 
开发者ID:PioBeat,项目名称:GravSupport,代码行数:25,代码来源:GravProjectGenerator.java


注:本文中的com.intellij.openapi.vfs.LocalFileSystem类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。