@Override @NotNull public InputStream getInputStream(@NotNull final VirtualFile file) throws IOException { synchronized (myInputLock) { InputStream contentStream; if (mustReloadContent(file) || (contentStream = readContent(file)) == null) { NewVirtualFileSystem delegate = getDelegate(file); long len = reloadLengthFromDelegate(file, delegate); InputStream nativeStream = delegate.getInputStream(file); if (len > PersistentFSConstants.FILE_LENGTH_TO_CACHE_THRESHOLD) return nativeStream; return createReplicator(file, nativeStream, len, delegate.isReadOnly()); } else { return contentStream; } } }