James Moger
2011-10-02 72633de4757587d7629dc42b41b8923c7c3d675f
Calculate repository sizes in Gitblit instead of the page.
2 files modified
20 ■■■■■ changed files
src/com/gitblit/GitBlit.java 5 ●●●●● patch | view | raw | blame | history
src/com/gitblit/wicket/panels/RepositoriesPanel.java 15 ●●●● patch | view | raw | blame | history
src/com/gitblit/GitBlit.java
@@ -62,6 +62,7 @@
import com.gitblit.models.FederationSet;
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.UserModel;
import com.gitblit.utils.ByteFormat;
import com.gitblit.utils.FederationUtils;
import com.gitblit.utils.JGitUtils;
import com.gitblit.utils.JsonUtils;
@@ -530,6 +531,10 @@
            model.origin = config.getString("remote", "origin", "url");
        }
        r.close();
        if (getBoolean(Keys.web.showRepositorySizes, true)) {
            ByteFormat byteFormat = new ByteFormat();
            model.size = byteFormat.format(calculateSize(model));
        }
        return model;
    }
src/com/gitblit/wicket/panels/RepositoriesPanel.java
@@ -47,7 +47,6 @@
import com.gitblit.SyndicationServlet;
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.UserModel;
import com.gitblit.utils.ByteFormat;
import com.gitblit.utils.StringUtils;
import com.gitblit.utils.TimeUtils;
import com.gitblit.wicket.GitBlitWebSession;
@@ -71,12 +70,6 @@
        if (models == null) {
            linksActive = true;
            models = GitBlit.self().getRepositoryModels(user);
            final ByteFormat byteFormat = new ByteFormat();
            if (showSize) {
                for (RepositoryModel model : models) {
                    model.size = byteFormat.format(GitBlit.self().calculateSize(model));
                }
            }
        } else {
            // disable links if the repositories are already provided
            // the repositories are most likely from a proposal
@@ -125,7 +118,7 @@
        } else {
            dp = new SortableRepositoriesProvider(models);
        }
        final String baseUrl = WicketUtils.getGitblitURL(getRequest());
        DataView<RepositoryModel> dataView = new DataView<RepositoryModel>("row", dp) {
@@ -163,11 +156,7 @@
                if (entry.hasCommits) {
                    // Existing repository
                    if (showSize) {
                        row.add(new Label("repositorySize", entry.size));
                    } else {
                        row.add(new Label("repositorySize").setVisible(false));
                    }
                    row.add(new Label("repositorySize", entry.size).setVisible(showSize));
                } else {
                    // New repository
                    row.add(new Label("repositorySize", "<span class='empty'>(empty)</span>")