ContentRevisionVirtualFile (@NotNull ContentRevision contentRevision) { synchronized (ourCache) { for (ContentRevisionVirtualFile file : ourCache) { if (contentRevision.equals(file.getContentRevision())) return file; } ContentRevisionVirtualFile file = new ContentRevisionVirtualFile(contentRevision); ourCache.add(file); return file; } }