1 package com.atlassian.plugins.codegen.modules.common.web;
2
3 import com.atlassian.plugins.codegen.PluginProjectChangeset;
4 import com.atlassian.plugins.codegen.annotations.BambooPluginModuleCreator;
5 import com.atlassian.plugins.codegen.annotations.ConfluencePluginModuleCreator;
6 import com.atlassian.plugins.codegen.annotations.FeCruPluginModuleCreator;
7 import com.atlassian.plugins.codegen.annotations.JiraPluginModuleCreator;
8 import com.atlassian.plugins.codegen.annotations.RefAppPluginModuleCreator;
9 import com.atlassian.plugins.codegen.modules.AbstractPluginModuleCreator;
10
11 import static com.atlassian.plugins.codegen.modules.Dependencies.HTTPCLIENT_TEST;
12 import static com.atlassian.plugins.codegen.modules.Dependencies.MOCKITO_TEST;
13
14
15
16
17 @RefAppPluginModuleCreator
18 @JiraPluginModuleCreator
19 @ConfluencePluginModuleCreator
20 @BambooPluginModuleCreator
21 @FeCruPluginModuleCreator
22 public class WebResourceTransformerModuleCreator extends AbstractPluginModuleCreator<WebResourceTransformerProperties>
23 {
24
25 public static final String MODULE_NAME = "Web Resource Transformer";
26 private static final String TEMPLATE_PREFIX = "templates/common/web/webrersourcetransformer/";
27
28
29 private static final String CLASS_TEMPLATE = TEMPLATE_PREFIX + "WebResourceTransformer.java.vtl";
30 private static final String UNIT_TEST_TEMPLATE = TEMPLATE_PREFIX + "WebResourceTransformerTest.java.vtl";
31
32
33 private static final String EXAMPLE_CLASS_TEMPLATE = TEMPLATE_PREFIX + "Example" + CLASS_TEMPLATE;
34
35 private static final String PLUGIN_MODULE_TEMPLATE = TEMPLATE_PREFIX + "web-resource-transformer-plugin.xml.vtl";
36
37 @Override
38 public PluginProjectChangeset createModule(WebResourceTransformerProperties props) throws Exception
39 {
40 PluginProjectChangeset ret = new PluginProjectChangeset()
41 .withDependencies(HTTPCLIENT_TEST,
42 MOCKITO_TEST)
43 .with(createModule(props, PLUGIN_MODULE_TEMPLATE));
44
45 if (props.includeExamples())
46 {
47 return ret.with(createClass(props, EXAMPLE_CLASS_TEMPLATE));
48 }
49 else
50 {
51 return ret.with(createClassAndTests(props, CLASS_TEMPLATE, UNIT_TEST_TEMPLATE));
52 }
53 }
54
55 @Override
56 public String getModuleName()
57 {
58 return MODULE_NAME;
59 }
60 }