View Javadoc
1   package com.atlassian.refapp.charlie;
2   
3   import com.atlassian.plugin.web.WebInterfaceManager;
4   import com.atlassian.sal.api.pluginsettings.PluginSettingsFactory;
5   import com.atlassian.templaterenderer.TemplateRenderer;
6   
7   import javax.servlet.http.HttpServlet;
8   import javax.servlet.http.HttpServletResponse;
9   import java.io.IOException;
10  import java.util.Map;
11  
12  /**
13   * Base class for the Charlie plugin pages.
14   *
15   * @since v2.5.0
16   */
17  public class CharlieServlet extends HttpServlet {
18      protected final PluginSettingsFactory pluginSettingsFactory;
19      protected final TemplateRenderer templateRenderer;
20      protected final WebInterfaceManager webInterfaceManager;
21      protected final CharlieStore store;
22  
23      public CharlieServlet(PluginSettingsFactory pluginSettingsFactory, TemplateRenderer templateRenderer, WebInterfaceManager webInterfaceManager, CharlieStore store) {
24          this.pluginSettingsFactory = pluginSettingsFactory;
25          this.templateRenderer = templateRenderer;
26          this.webInterfaceManager = webInterfaceManager;
27          this.store = store;
28      }
29  
30      protected void render(String template, Map<String, Object> context, HttpServletResponse response) throws IOException {
31          response.setContentType("text/html");
32          templateRenderer.render(template, context, response.getWriter());
33      }
34  }