diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/ContentRevisionVirtualFile.java b/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/ContentRevisionVirtualFile.java index 219b89cd7d21..e7235c62faf7 100644 --- a/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/ContentRevisionVirtualFile.java +++ b/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/ContentRevisionVirtualFile.java @@ -34,13 +34,13 @@ import java.nio.ByteBuffer; * @author yole */ public class ContentRevisionVirtualFile extends AbstractVcsVirtualFile { - private final ContentRevision myContentRevision; + @NotNull private final ContentRevision myContentRevision; private byte[] myContent; private boolean myContentLoadFailed; private static final WeakHashMap ourMap = new WeakHashMap(); - public static ContentRevisionVirtualFile create(ContentRevision contentRevision) { + public static ContentRevisionVirtualFile create(@NotNull ContentRevision contentRevision) { synchronized(ourMap) { ContentRevisionVirtualFile revisionVirtualFile = ourMap.get(contentRevision); if (revisionVirtualFile == null) { @@ -51,7 +51,7 @@ public class ContentRevisionVirtualFile extends AbstractVcsVirtualFile { } } - private ContentRevisionVirtualFile(ContentRevision contentRevision) { + private ContentRevisionVirtualFile(@NotNull ContentRevision contentRevision) { super(contentRevision.getFile().getPath(), VcsFileSystem.getInstance()); myContentRevision = contentRevision; setCharset(CharsetToolkit.UTF8_CHARSET); @@ -119,6 +119,7 @@ public class ContentRevisionVirtualFile extends AbstractVcsVirtualFile { } } + @NotNull public ContentRevision getContentRevision() { return myContentRevision; } diff --git a/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/VcsVirtualFile.java b/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/VcsVirtualFile.java index 69e6580a22a3..645511d0cce7 100644 --- a/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/VcsVirtualFile.java +++ b/platform/vcs-api/src/com/intellij/openapi/vcs/vfs/VcsVirtualFile.java @@ -28,6 +28,7 @@ import com.intellij.openapi.vfs.CharsetToolkit; import com.intellij.openapi.vfs.VirtualFileSystem; import com.intellij.util.ArrayUtil; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.io.IOException; import java.nio.charset.Charset; @@ -43,15 +44,17 @@ public class VcsVirtualFile extends AbstractVcsVirtualFile { private boolean myContentLoadFailed = false; private Charset myCharset; - public VcsVirtualFile(String path, - VcsFileRevision revision, VirtualFileSystem fileSystem) { + public VcsVirtualFile(@NotNull String path, + @Nullable VcsFileRevision revision, + @NotNull VirtualFileSystem fileSystem) { super(path, fileSystem); myFileRevision = revision; } - public VcsVirtualFile(String path, - byte[] content, - String revision, VirtualFileSystem fileSystem) { + public VcsVirtualFile(@NotNull String path, + @NotNull byte[] content, + @Nullable String revision, + @NotNull VirtualFileSystem fileSystem) { this(path, null, fileSystem); myContent = content; setRevision(revision); @@ -70,7 +73,8 @@ public class VcsVirtualFile extends AbstractVcsVirtualFile { private void loadContent() throws IOException { if (myContent != null) return; - + assert myFileRevision != null; + final VcsFileSystem vcsFileSystem = ((VcsFileSystem)getFileSystem()); try { @@ -122,6 +126,7 @@ public class VcsVirtualFile extends AbstractVcsVirtualFile { } + @Nullable public VcsFileRevision getFileRevision() { return myFileRevision; }