From abd1524e7bae97e17ac5f722faad1362297743ce Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 19 Nov 2013 16:12:30 -0500
Subject: [PATCH] Update Moxie to 0.9.0
---
src/main/java/com/gitblit/wicket/GitBlitWebApp.java | 48 +++++++++++++++++++++++++++++++++++++-----------
1 files changed, 37 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/gitblit/wicket/GitBlitWebApp.java b/src/main/java/com/gitblit/wicket/GitBlitWebApp.java
index 74b8055..70aa1a6 100644
--- a/src/main/java/com/gitblit/wicket/GitBlitWebApp.java
+++ b/src/main/java/com/gitblit/wicket/GitBlitWebApp.java
@@ -15,7 +15,9 @@
*/
package com.gitblit.wicket;
+import java.util.HashMap;
import java.util.Locale;
+import java.util.Map;
import org.apache.wicket.Application;
import org.apache.wicket.Page;
@@ -29,12 +31,15 @@
import com.gitblit.Keys;
import com.gitblit.utils.StringUtils;
import com.gitblit.wicket.pages.ActivityPage;
+import com.gitblit.wicket.pages.BasePage;
import com.gitblit.wicket.pages.BlamePage;
import com.gitblit.wicket.pages.BlobDiffPage;
import com.gitblit.wicket.pages.BlobPage;
import com.gitblit.wicket.pages.BranchesPage;
import com.gitblit.wicket.pages.CommitDiffPage;
import com.gitblit.wicket.pages.CommitPage;
+import com.gitblit.wicket.pages.ComparePage;
+import com.gitblit.wicket.pages.DocPage;
import com.gitblit.wicket.pages.DocsPage;
import com.gitblit.wicket.pages.FederationRegistrationPage;
import com.gitblit.wicket.pages.ForkPage;
@@ -45,24 +50,28 @@
import com.gitblit.wicket.pages.LogPage;
import com.gitblit.wicket.pages.LogoutPage;
import com.gitblit.wicket.pages.LuceneSearchPage;
-import com.gitblit.wicket.pages.MarkdownPage;
import com.gitblit.wicket.pages.MetricsPage;
+import com.gitblit.wicket.pages.MyDashboardPage;
+import com.gitblit.wicket.pages.OverviewPage;
import com.gitblit.wicket.pages.PatchPage;
import com.gitblit.wicket.pages.ProjectPage;
import com.gitblit.wicket.pages.ProjectsPage;
import com.gitblit.wicket.pages.RawPage;
+import com.gitblit.wicket.pages.ReflogPage;
import com.gitblit.wicket.pages.RepositoriesPage;
import com.gitblit.wicket.pages.ReviewProposalPage;
import com.gitblit.wicket.pages.SummaryPage;
import com.gitblit.wicket.pages.TagPage;
import com.gitblit.wicket.pages.TagsPage;
-import com.gitblit.wicket.pages.TicketPage;
-import com.gitblit.wicket.pages.TicketsPage;
import com.gitblit.wicket.pages.TreePage;
import com.gitblit.wicket.pages.UserPage;
import com.gitblit.wicket.pages.UsersPage;
public class GitBlitWebApp extends WebApplication {
+
+ public final static Class<? extends BasePage> HOME_PAGE_CLASS = MyDashboardPage.class;
+
+ private final Map<String, CacheControl> cacheablePages = new HashMap<String, CacheControl>();
@Override
public void init() {
@@ -88,7 +97,11 @@
}
// setup the standard gitweb-ish urls
+ mount("/repositories", RepositoriesPage.class);
+ mount("/overview", OverviewPage.class, "r", "h");
mount("/summary", SummaryPage.class, "r");
+ mount("/reflog", ReflogPage.class, "r", "h");
+ mount("/commits", LogPage.class, "r", "h");
mount("/log", LogPage.class, "r", "h");
mount("/tags", TagsPage.class, "r");
mount("/branches", BranchesPage.class, "r");
@@ -99,6 +112,7 @@
mount("/raw", RawPage.class, "r", "h", "f");
mount("/blobdiff", BlobDiffPage.class, "r", "h", "f");
mount("/commitdiff", CommitDiffPage.class, "r", "h");
+ mount("/compare", ComparePage.class, "r", "h");
mount("/patch", PatchPage.class, "r", "h", "f");
mount("/history", HistoryPage.class, "r", "h", "f");
mount("/search", GitSearchPage.class);
@@ -107,13 +121,9 @@
mount("/users", UsersPage.class);
mount("/logout", LogoutPage.class);
- // setup ticket urls
- mount("/tickets", TicketsPage.class, "r");
- mount("/ticket", TicketPage.class, "r", "f");
-
- // setup the markdown urls
+ // setup the markup document urls
mount("/docs", DocsPage.class, "r");
- mount("/markdown", MarkdownPage.class, "r", "h", "f");
+ mount("/doc", DocPage.class, "r", "h", "f");
// federation urls
mount("/proposal", ReviewProposalPage.class, "t");
@@ -127,6 +137,8 @@
mount("/user", UserPage.class, "user");
mount("/forks", ForksPage.class, "r");
mount("/fork", ForkPage.class, "r");
+
+ getMarkupSettings().setDefaultMarkupEncoding("UTF-8");
}
private void mount(String location, Class<? extends WebPage> clazz, String... parameters) {
@@ -137,13 +149,27 @@
parameters = new String[] {};
}
mount(new GitblitParamUrlCodingStrategy(location, clazz, parameters));
+
+ // map the mount point to the cache control definition
+ if (clazz.isAnnotationPresent(CacheControl.class)) {
+ CacheControl cacheControl = clazz.getAnnotation(CacheControl.class);
+ cacheablePages.put(location.substring(1), cacheControl);
+ }
}
@Override
public Class<? extends Page> getHomePage() {
- return RepositoriesPage.class;
+ return HOME_PAGE_CLASS;
}
-
+
+ public boolean isCacheablePage(String mountPoint) {
+ return cacheablePages.containsKey(mountPoint);
+ }
+
+ public CacheControl getCacheControl(String mountPoint) {
+ return cacheablePages.get(mountPoint);
+ }
+
@Override
public final Session newSession(Request request, Response response) {
GitBlitWebSession gitBlitWebSession = new GitBlitWebSession(request);
--
Gitblit v1.9.1