From 6bb3b233c8a73d4fe4e5024794029fdc75a9f1bb Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 14 Sep 2012 09:36:46 -0400
Subject: [PATCH] Expose ReceivePack to Groovy hooks (issue 125)
---
src/com/gitblit/wicket/pages/RepositoriesPage.java | 31 +++++++++++++++++++++++++++----
1 files changed, 27 insertions(+), 4 deletions(-)
diff --git a/src/com/gitblit/wicket/pages/RepositoriesPage.java b/src/com/gitblit/wicket/pages/RepositoriesPage.java
index 839f4e3..98dade6 100644
--- a/src/com/gitblit/wicket/pages/RepositoriesPage.java
+++ b/src/com/gitblit/wicket/pages/RepositoriesPage.java
@@ -17,6 +17,7 @@
import java.io.File;
import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.text.MessageFormat;
@@ -26,6 +27,7 @@
import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.resource.ContextRelativeResource;
+import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
import org.eclipse.jgit.lib.Constants;
import com.gitblit.GitBlit;
@@ -126,11 +128,11 @@
message = MarkdownUtils.transformMarkdown(reader);
reader.close();
} catch (Throwable t) {
- message = "Failed to read " + file;
+ message = getString("gb.failedToRead") + " " + file;
warn(message, t);
}
} else {
- message = messageSource + " is not a valid file.";
+ message = messageSource + " " + getString("gb.isNotValidFile");
}
}
}
@@ -138,15 +140,36 @@
}
private String readDefaultMarkdown(String file) {
+ String content = readDefaultMarkdown(file, getLanguageCode());
+ if (StringUtils.isEmpty(content)) {
+ content = readDefaultMarkdown(file, null);
+ }
+ return content;
+ }
+
+ private String readDefaultMarkdown(String file, String lc) {
+ if (!StringUtils.isEmpty(lc)) {
+ // convert to file_lc.mkd
+ file = file.substring(0, file.lastIndexOf('.')) + "_" + lc + file.substring(file.lastIndexOf('.'));
+ }
String message;
- try {
+ try {
ContextRelativeResource res = WicketUtils.getResource(file);
InputStream is = res.getResourceStream().getInputStream();
InputStreamReader reader = new InputStreamReader(is, Constants.CHARACTER_ENCODING);
message = MarkdownUtils.transformMarkdown(reader);
reader.close();
+ } catch (ResourceStreamNotFoundException t) {
+ if (lc == null) {
+ // could not find default language resource
+ message = MessageFormat.format(getString("gb.failedToReadMessage"), file);
+ error(message, t, false);
+ } else {
+ // ignore so we can try default language resource
+ message = null;
+ }
} catch (Throwable t) {
- message = MessageFormat.format("Failed to read default message from {0}!", file);
+ message = MessageFormat.format(getString("gb.failedToReadMessage"), file);
error(message, t, false);
}
return message;
--
Gitblit v1.9.1