From 9c98296c197c4b0e09718dc6a258d4272ec9fc49 Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Tue, 28 Feb 2012 20:31:50 +0100 Subject: [PATCH] Cleaner method names --- .../openapi/fileChooser/FileChooser.java | 4 ++- .../openapi/fileChooser/FileChooserUtil.java | 28 ++++++------------- .../fileChooser/ex/FileChooserDialogImpl.java | 2 +- 3 files changed, 13 insertions(+), 21 deletions(-) diff --git a/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooser.java b/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooser.java index c11c49f0e048..f9b6644413b9 100644 --- a/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooser.java +++ b/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooser.java @@ -18,6 +18,7 @@ package com.intellij.openapi.fileChooser; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.registry.Registry; +import com.intellij.openapi.vfs.VfsUtil; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.util.ArrayUtil; import com.intellij.util.Consumer; @@ -111,7 +112,8 @@ public class FileChooser { choosePaths(descriptor, project, parent, path, new Consumer>() { @Override public void consume(final List paths) { - callback.consume(FileChooserUtil.getFiles(ArrayUtil.toStringArray(paths))); + final List files = FileChooserUtil.pathsToFiles(paths, true); + callback.consume(VfsUtil.toVirtualFileArray(files)); } }); } diff --git a/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooserUtil.java b/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooserUtil.java index 03c82b905990..1ea2a1d16734 100644 --- a/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooserUtil.java +++ b/platform/platform-api/src/com/intellij/openapi/fileChooser/FileChooserUtil.java @@ -15,16 +15,16 @@ */ package com.intellij.openapi.fileChooser; +import com.google.common.collect.Lists; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.Key; import com.intellij.openapi.vfs.LocalFileSystem; -import com.intellij.openapi.vfs.VfsUtil; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.util.ArrayUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; /** @@ -47,7 +47,7 @@ public final class FileChooserUtil { } @NotNull - public static String[] getPaths(@Nullable final VirtualFile[] files) { + public static String[] filesToPaths(@Nullable final VirtualFile[] files) { if (files == null || files.length == 0) return ArrayUtil.EMPTY_STRING_ARRAY; final String[] paths = new String[files.length]; @@ -58,28 +58,18 @@ public final class FileChooserUtil { } @NotNull - public static VirtualFile[] getFiles(@Nullable final String[] paths) { - if (paths == null || paths.length == 0) return VirtualFile.EMPTY_ARRAY; + public static List pathsToFiles(@Nullable final List paths, final boolean refresh) { + if (paths == null || paths.size() == 0) return Collections.emptyList(); - final List files = new ArrayList(); + final LocalFileSystem fs = LocalFileSystem.getInstance(); + final List files = Lists.newArrayListWithExpectedSize(paths.size()); for (String path : paths) { - final VirtualFile file = LocalFileSystem.getInstance().refreshAndFindFileByPath(path); + final VirtualFile file = refresh ? fs.refreshAndFindFileByPath(path) : fs.findFileByPath(path); if (file != null && file.isValid()) { files.add(file); } } - return VfsUtil.toVirtualFileArray(files); - } - - @Nullable - public static VirtualFile getFile(@Nullable final String path) { - if (path == null) return null; - - final VirtualFile file = LocalFileSystem.getInstance().refreshAndFindFileByPath(path); - if (file == null || !file.isValid()) return null; - - setSelectionPath(file, path); - return file; + return files; } @Nullable diff --git a/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileChooserDialogImpl.java b/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileChooserDialogImpl.java index 59e2fd1aa0eb..e1394ed0ec12 100644 --- a/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileChooserDialogImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/fileChooser/ex/FileChooserDialogImpl.java @@ -115,7 +115,7 @@ public class FileChooserDialogImpl extends DialogWrapper implements FileChooserD @Override public void choose(@Nullable String toSelect, @NotNull Consumer> callback) { prepareAndShow(toSelect, myProject); - callback.consume(Arrays.asList(FileChooserUtil.getPaths(myChosenFiles))); + callback.consume(Arrays.asList(FileChooserUtil.filesToPaths(myChosenFiles))); } private void prepareAndShow(@Nullable String toSelect, @Nullable Project project) {