diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java
index e47e3df..a12e240 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/BaseServlet.java
@@ -72,6 +72,17 @@
     }
   }
 
+  /**
+   * Put a value into a request's Soy data map.
+   *
+   * @param req in-progress request.
+   * @param key key.
+   * @param value Soy data value.
+   */
+  public static void putSoyData(HttpServletRequest req, String key, Object value) {
+    getData(req).put(key, value);
+  }
+
   @Override
   protected void doGet(HttpServletRequest req, HttpServletResponse res)
       throws IOException, ServletException {
@@ -160,21 +171,6 @@
   }
 
   /**
-   * Put a value into a request's Soy data map.
-   * <p>
-   * This method is intended to support a composition pattern whereby a
-   * {@link BaseServlet} is wrapped in a different {@link HttpServlet} that can
-   * update its data map.
-   *
-   * @param req in-progress request.
-   * @param key key.
-   * @param value Soy data value.
-   */
-  public void put(HttpServletRequest req, String key, Object value) {
-    getData(req).put(key, value);
-  }
-
-  /**
    * Render data to HTML using Soy.
    *
    * @param req in-progress request.
