public synchronized byte[] getContent() throws IOException, VcsException {
   if (myNoCache) {
     return loadContent();
   }
   return ContentRevisionCache.getOrLoadAsBytes(
       project,
       path,
       revision,
       GitVcs.getKey(),
       ContentRevisionCache.UniqueType.REPOSITORY_CONTENT,
       new Throwable2Computable<byte[], VcsException, IOException>() {
         @Override
         public byte[] compute() throws VcsException, IOException {
           return loadContent();
         }
       });
 }
 public GitCheckinHandlerFactory() {
   super(GitVcs.getKey());
 }
 @NotNull
 @Override
 public VcsKey getSupportedVcs() {
   return GitVcs.getKey();
 }
 boolean isValid() {
   return project != null && log != null && DvcsUtil.logHasRootForVcs(log, GitVcs.getKey());
 }