1   package com.atlassian.plugins.codegen.modules.common.web;
2   
3   import com.atlassian.plugins.codegen.modules.BasicClassModuleProperties;
4   
5   import java.util.Collections;
6   import java.util.List;
7   
8   import static com.google.common.collect.Lists.newArrayList;
9   
10  /**
11   * @since 3.6
12   */
13  public class WebResourceTransformer extends BasicClassModuleProperties
14  {
15      private List<String> functionsList;
16  
17      public WebResourceTransformer()
18      {
19          this("My Web Resource Transformer");
20          functionsList = newArrayList();
21      }
22  
23      public WebResourceTransformer(String fqClassName)
24      {
25          super(fqClassName);
26      }
27  
28      public void addFunctions(String functions)
29      {
30          functionsList.add(functions);
31      }
32  
33      public List<String> getFunctions()
34      {
35          return Collections.unmodifiableList(functionsList);
36      }
37  
38      @Override
39      public boolean equals(Object o)
40      {
41          if (this == o) return true;
42          if (o == null || getClass() != o.getClass()) return false;
43          if (!super.equals(o)) return false;
44  
45          WebResourceTransformer that = (WebResourceTransformer) o;
46  
47          if (!functionsList.equals(that.functionsList)) return false;
48  
49          return true;
50      }
51  
52      @Override
53      public int hashCode()
54      {
55          int result = super.hashCode();
56          result = 31 * result + functionsList.hashCode();
57          return result;
58      }
59  }