From 4bcaea2e40ab1ee192888f7d29c334a2a3cd3699 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 17 Aug 2012 15:49:44 -0400
Subject: [PATCH] Fix performance logging null pointer on anonymous repository browsing
---
src/com/gitblit/wicket/panels/RepositoriesPanel.java | 25 +++++++++++++++++--------
1 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/src/com/gitblit/wicket/panels/RepositoriesPanel.java b/src/com/gitblit/wicket/panels/RepositoriesPanel.java
index ee6e119..8c8e1e5 100644
--- a/src/com/gitblit/wicket/panels/RepositoriesPanel.java
+++ b/src/com/gitblit/wicket/panels/RepositoriesPanel.java
@@ -49,12 +49,12 @@
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.UserModel;
import com.gitblit.utils.StringUtils;
-import com.gitblit.utils.TimeUtils;
import com.gitblit.wicket.GitBlitWebSession;
import com.gitblit.wicket.WicketUtils;
import com.gitblit.wicket.pages.BasePage;
import com.gitblit.wicket.pages.EditRepositoryPage;
import com.gitblit.wicket.pages.EmptyRepositoryPage;
+import com.gitblit.wicket.pages.RepositoriesPage;
import com.gitblit.wicket.pages.SummaryPage;
public class RepositoriesPanel extends BasePanel {
@@ -74,6 +74,16 @@
final IDataProvider<RepositoryModel> dp;
Fragment adminLinks = new Fragment("adminPanel", "adminLinks", this);
+ adminLinks.add(new Link<Void>("clearCache") {
+
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public void onClick() {
+ GitBlit.self().resetRepositoryListCache();
+ setResponsePage(RepositoriesPage.class);
+ }
+ }.setVisible(GitBlit.getBoolean(Keys.git.cacheRepositoryList, true)));
adminLinks.add(new BookmarkablePageLink<Void>("newRepository", EditRepositoryPage.class));
add(adminLinks.setVisible(showAdmin));
@@ -185,7 +195,7 @@
row.add(new Label("repositorySize", entry.size).setVisible(showSize));
} else {
// New repository
- row.add(new Label("repositorySize", "<span class='empty'>(empty)</span>")
+ row.add(new Label("repositorySize", "<span class='empty'>(" + getString("gb.empty") + ")</span>")
.setEscapeModelStrings(false));
}
@@ -242,11 +252,11 @@
if (entry.lastChange.getTime() == 0) {
lastChange = "--";
} else {
- lastChange = TimeUtils.timeAgo(entry.lastChange);
+ lastChange = getTimeUtils().timeAgo(entry.lastChange);
}
Label lastChangeLabel = new Label("repositoryLastChange", lastChange);
row.add(lastChangeLabel);
- WicketUtils.setCssClass(lastChangeLabel, TimeUtils.timeAgoCss(entry.lastChange));
+ WicketUtils.setCssClass(lastChangeLabel, getTimeUtils().timeAgoCss(entry.lastChange));
boolean showOwner = user != null && user.username.equalsIgnoreCase(entry.owner);
if (showAdmin) {
@@ -262,20 +272,19 @@
@Override
public void onClick() {
if (GitBlit.self().deleteRepositoryModel(entry)) {
- info(MessageFormat.format("Repository ''{0}'' deleted.", entry));
+ info(MessageFormat.format(getString("gb.repositoryDeleted"), entry));
if (dp instanceof SortableRepositoriesProvider) {
((SortableRepositoriesProvider) dp).remove(entry);
} else {
((RepositoriesProvider) dp).remove(entry);
}
} else {
- error(MessageFormat.format("Failed to delete repository ''{0}''!",
- entry));
+ error(MessageFormat.format(getString("gb.repositoryDeleteFailed"), entry));
}
}
};
deleteLink.add(new JavascriptEventConfirmation("onclick", MessageFormat.format(
- "Delete repository \"{0}\"?", entry)));
+ getString("gb.deleteRepository"), entry)));
repositoryLinks.add(deleteLink);
row.add(repositoryLinks);
} else if (showOwner) {
--
Gitblit v1.9.1