private void addPointersUnder( String path, boolean allowSameFSOptimization, List<VirtualFilePointer> pointers) { final boolean urlFromJarFS = allowSameFSOptimization && path.indexOf(JarFileSystem.JAR_SEPARATOR) > 0; for (TreeMap<String, VirtualFilePointerImpl> urlToPointer : myUrlToPointerMaps.values()) { for (String pointerUrl : urlToPointer.keySet()) { final boolean pointerFromJarFS = allowSameFSOptimization && pointerUrl.indexOf(JarFileSystem.JAR_SEPARATOR) > 0; if (urlFromJarFS != pointerFromJarFS) { continue; // optimization: consider pointers from the same FS as the url specified } if (startsWith(path, pointerUrl)) { VirtualFilePointer pointer = urlToPointer.get(pointerUrl); if (pointer != null) { pointers.add(pointer); } } } } }