James Moger
2012-07-11 9ca331b8a9a1cbda7283fb9a36d881d336f7f045
src/com/gitblit/utils/JGitUtils.java
@@ -20,7 +20,6 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.charset.Charset;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Arrays;
@@ -36,6 +35,7 @@
import org.eclipse.jgit.api.CloneCommand;
import org.eclipse.jgit.api.FetchCommand;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.diff.DiffEntry;
import org.eclipse.jgit.diff.DiffEntry.ChangeType;
import org.eclipse.jgit.diff.DiffFormatter;
@@ -258,8 +258,12 @@
    * @return Repository
    */
   public static Repository createRepository(File repositoriesFolder, String name) {
      Git git = Git.init().setDirectory(new File(repositoriesFolder, name)).setBare(true).call();
      return git.getRepository();
      try {
         Git git = Git.init().setDirectory(new File(repositoriesFolder, name)).setBare(true).call();
         return git.getRepository();
      } catch (GitAPIException e) {
         throw new RuntimeException(e);
      }
   }
   /**
@@ -310,9 +314,14 @@
               if (onlyBare && gitDir.getName().equals(".git")) {
                  continue;
               }
               // determine repository name relative to base path
               String repository = FileUtils.getRelativePath(baseFile, file);
               list.add(repository);
               if (gitDir.equals(file) || gitDir.getParentFile().equals(file)) {
                  // determine repository name relative to base path
                  String repository = FileUtils.getRelativePath(baseFile, file);
                  list.add(repository);
               } else if (searchSubfolders && file.canRead()) {
                  // look for repositories in subfolders
                  list.addAll(getRepositoryList(basePath, file, onlyBare, searchSubfolders));
               }
            } else if (searchSubfolders && file.canRead()) {
               // look for repositories in subfolders
               list.addAll(getRepositoryList(basePath, file, onlyBare, searchSubfolders));
@@ -543,14 +552,15 @@
    * @param tree
    *            if null, the RevTree from HEAD is assumed.
    * @param blobPath
    * @param charsets optional
    * @return UTF-8 string content
    */
   public static String getStringContent(Repository repository, RevTree tree, String blobPath) {
   public static String getStringContent(Repository repository, RevTree tree, String blobPath, String... charsets) {
      byte[] content = getByteContent(repository, tree, blobPath);
      if (content == null) {
         return null;
      }
      return new String(content, Charset.forName(Constants.CHARACTER_ENCODING));
      return StringUtils.decodeString(content, charsets);
   }
   /**
@@ -589,14 +599,15 @@
    * 
    * @param repository
    * @param objectId
    * @param charsets optional
    * @return UTF-8 string content
    */
   public static String getStringContent(Repository repository, String objectId) {
   public static String getStringContent(Repository repository, String objectId, String... charsets) {
      byte[] content = getByteContent(repository, objectId);
      if (content == null) {
         return null;
      }
      return new String(content, Charset.forName(Constants.CHARACTER_ENCODING));
      return StringUtils.decodeString(content, charsets);
   }
   /**