mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
reducing dependencies of VirtualFilePointerContainerImpl
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2000-2011 JetBrains s.r.o.
|
||||
* Copyright 2000-2012 JetBrains s.r.o.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -25,6 +25,7 @@ import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.OutputStream;
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -194,4 +195,12 @@ public class VfsUtilCore {
|
||||
reader.close();
|
||||
}
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static VirtualFile[] toVirtualFileArray(@NotNull Collection<? extends VirtualFile> files) {
|
||||
int size = files.size();
|
||||
if (size == 0) return VirtualFile.EMPTY_ARRAY;
|
||||
//noinspection SSBasedInspection
|
||||
return files.toArray(new VirtualFile[size]);
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -17,11 +17,12 @@ package com.intellij.openapi.vfs.pointers;
|
||||
|
||||
import com.intellij.openapi.Disposable;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.util.ModificationTracker;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
public abstract class VirtualFilePointerManager implements Disposable {
|
||||
public abstract class VirtualFilePointerManager implements Disposable, ModificationTracker {
|
||||
public static VirtualFilePointerManager getInstance() {
|
||||
return ApplicationManager.getApplication().getComponent(VirtualFilePointerManager.class);
|
||||
}
|
||||
|
||||
@@ -669,14 +669,6 @@ public class VfsUtil extends VfsUtilCore {
|
||||
return null;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static VirtualFile[] toVirtualFileArray(@NotNull Collection<? extends VirtualFile> files) {
|
||||
int size = files.size();
|
||||
if (size == 0) return VirtualFile.EMPTY_ARRAY;
|
||||
//noinspection SSBasedInspection
|
||||
return files.toArray(new VirtualFile[size]);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static String getReadableUrl(@NotNull final VirtualFile file) {
|
||||
return file.isInLocalFileSystem() ? file.getPresentableUrl() : file.getUrl();
|
||||
|
||||
+6
-5
@@ -20,11 +20,12 @@ import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.util.InvalidDataException;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.openapi.util.Trinity;
|
||||
import com.intellij.openapi.vfs.VfsUtil;
|
||||
import com.intellij.openapi.vfs.VfsUtilCore;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.openapi.vfs.pointers.VirtualFilePointer;
|
||||
import com.intellij.openapi.vfs.pointers.VirtualFilePointerContainer;
|
||||
import com.intellij.openapi.vfs.pointers.VirtualFilePointerListener;
|
||||
import com.intellij.openapi.vfs.pointers.VirtualFilePointerManager;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.containers.ContainerUtilRt;
|
||||
@@ -44,7 +45,7 @@ public class VirtualFilePointerContainerImpl implements VirtualFilePointerContai
|
||||
private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.vfs.pointers.VirtualFilePointerContainer");
|
||||
@NotNull private final List<VirtualFilePointer> myList = ContainerUtilRt.createEmptyCOWList();
|
||||
private final List<VirtualFilePointer> myReadOnlyList = Collections.unmodifiableList(myList);
|
||||
@NotNull private final VirtualFilePointerManagerImpl myVirtualFilePointerManager;
|
||||
@NotNull private final VirtualFilePointerManager myVirtualFilePointerManager;
|
||||
@NotNull private final Disposable myParent;
|
||||
private final VirtualFilePointerListener myListener;
|
||||
private VirtualFile[] myCachedDirectories;
|
||||
@@ -54,7 +55,7 @@ public class VirtualFilePointerContainerImpl implements VirtualFilePointerContai
|
||||
@NonNls private static final String URL_ATTR = "url";
|
||||
private boolean myDisposed;
|
||||
|
||||
public VirtualFilePointerContainerImpl(@NotNull VirtualFilePointerManagerImpl manager, @NotNull Disposable parent, @Nullable VirtualFilePointerListener listener) {
|
||||
public VirtualFilePointerContainerImpl(@NotNull VirtualFilePointerManager manager, @NotNull Disposable parent, @Nullable VirtualFilePointerListener listener) {
|
||||
myVirtualFilePointerManager = manager;
|
||||
myParent = parent;
|
||||
myListener = listener;
|
||||
@@ -201,10 +202,10 @@ public class VirtualFilePointerContainerImpl implements VirtualFilePointerContai
|
||||
}
|
||||
}
|
||||
}
|
||||
VirtualFile[] directories = VfsUtil.toVirtualFileArray(cachedDirectories);
|
||||
VirtualFile[] directories = VfsUtilCore.toVirtualFileArray(cachedDirectories);
|
||||
myCachedDirectories = directories;
|
||||
VirtualFile[] filesArray;
|
||||
myCachedFiles = filesArray = VfsUtil.toVirtualFileArray(cachedFiles);
|
||||
myCachedFiles = filesArray = VfsUtilCore.toVirtualFileArray(cachedFiles);
|
||||
String[] urlsArray;
|
||||
myCachedUrls = urlsArray = ArrayUtil.toStringArray(cachedUrls);
|
||||
return Trinity.create(urlsArray, filesArray, directories);
|
||||
|
||||
Reference in New Issue
Block a user