Make site title configurable in gitiles.config Change-Id: I1cd3445691f77c2368b566b422bf990c5f0690fd
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/DebugRenderer.java b/gitiles-servlet/src/main/java/com/google/gitiles/DebugRenderer.java index e56518a..366191a 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/DebugRenderer.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/DebugRenderer.java
@@ -28,7 +28,7 @@ /** Renderer that reloads Soy templates from the filesystem on every request. */ public class DebugRenderer extends Renderer { public DebugRenderer(String staticPrefix, String customTemplatesFilename, - final String soyTemplatesRoot) { + final String soyTemplatesRoot, String siteTitle) { super( new Function<String, URL>() { @Override @@ -37,7 +37,7 @@ } }, ImmutableMap.<String, String> of(), staticPrefix, - toFileURL(customTemplatesFilename)); + toFileURL(customTemplatesFilename), siteTitle); } @Override
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/DefaultRenderer.java b/gitiles-servlet/src/main/java/com/google/gitiles/DefaultRenderer.java index f4bd1fb..e2eef7c 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/DefaultRenderer.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/DefaultRenderer.java
@@ -28,14 +28,15 @@ private final SoyTofu tofu; DefaultRenderer() { - this("", null); + this("", null, ""); } - public DefaultRenderer(String staticPrefix, URL customTemplates) { - this(ImmutableMap.<String, String> of(), staticPrefix, customTemplates); + public DefaultRenderer(String staticPrefix, URL customTemplates, String siteTitle) { + this(ImmutableMap.<String, String> of(), staticPrefix, customTemplates, siteTitle); } - public DefaultRenderer(Map<String, String> globals, String staticPrefix, URL customTemplates) { + public DefaultRenderer(Map<String, String> globals, String staticPrefix, URL customTemplates, + String siteTitle) { super( new Function<String, URL>() { @Override @@ -43,7 +44,7 @@ return Resources.getResource(Renderer.class, "templates/" + name); } }, - globals, staticPrefix, customTemplates); + globals, staticPrefix, customTemplates, siteTitle); SoyFileSet.Builder builder = new SoyFileSet.Builder() .setCompileTimeGlobals(this.globals); for (URL template : templates) {
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java index dd8905e..e2cc699 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/GitilesFilter.java
@@ -21,6 +21,7 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Joiner; +import com.google.common.base.Objects; import com.google.common.collect.ImmutableMap; import com.google.common.collect.LinkedListMultimap; import com.google.common.collect.ListMultimap; @@ -282,14 +283,17 @@ if (renderer == null) { String staticPrefix = config.getServletContext().getContextPath() + STATIC_PREFIX; String customTemplates = jgitConfig.getString("gitiles", null, "customTemplates"); + String siteTitle = Objects.firstNonNull(jgitConfig.getString("gitiles", null, "siteTitle"), + "Gitiles"); // TODO(dborowitz): Automatically set to true when run with mvn jetty:run. if (jgitConfig.getBoolean("gitiles", null, "reloadTemplates", false)) { renderer = new DebugRenderer(staticPrefix, customTemplates, Joiner.on(File.separatorChar).join(System.getProperty("user.dir"), "gitiles-servlet", "src", "main", "resources", - "com", "google", "gitiles", "templates")); + "com", "google", "gitiles", "templates"), siteTitle); } else { - renderer = new DefaultRenderer(staticPrefix, Renderer.toFileURL(customTemplates)); + renderer = new DefaultRenderer(staticPrefix, Renderer.toFileURL(customTemplates), + siteTitle); } } if (urls == null) {
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/Renderer.java b/gitiles-servlet/src/main/java/com/google/gitiles/Renderer.java index 42ce635..dc4f680 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/Renderer.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/Renderer.java
@@ -65,7 +65,7 @@ protected ImmutableMap<String, String> globals; protected Renderer(Function<String, URL> resourceMapper, Map<String, String> globals, - String staticPrefix, URL customTemplates) { + String staticPrefix, URL customTemplates, String siteTitle) { checkNotNull(staticPrefix, "staticPrefix"); List<URL> allTemplates = Lists.newArrayListWithCapacity(SOY_FILENAMES.size() + 1); for (String filename : SOY_FILENAMES) { @@ -82,6 +82,7 @@ for (Map.Entry<String, String> e : STATIC_URL_GLOBALS.entrySet()) { allGlobals.put(e.getKey(), staticPrefix + e.getValue()); } + allGlobals.put("gitiles.SITE_TITLE", siteTitle); allGlobals.putAll(globals); this.globals = ImmutableMap.copyOf(allGlobals); }
diff --git a/gitiles-servlet/src/main/resources/com/google/gitiles/templates/Common.soy b/gitiles-servlet/src/main/resources/com/google/gitiles/templates/Common.soy index 4297d31..908f2fd 100644 --- a/gitiles-servlet/src/main/resources/com/google/gitiles/templates/Common.soy +++ b/gitiles-servlet/src/main/resources/com/google/gitiles/templates/Common.soy
@@ -36,7 +36,7 @@ {if $repositoryName} {sp}- {$repositoryName} {/if} - {sp}- {msg desc="name of the application"}Git at Google{/msg} + {sp}- {msg desc="name of the application"}{gitiles.SITE_TITLE}{/msg} </title> <link rel="stylesheet" type="text/css" href="//www.google.com/css/go.css" />