1 package com.atlassian.plugins.codegen.modules.jira;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 import com.atlassian.plugins.codegen.modules.BasicClassModuleProperties;
7 import com.atlassian.plugins.codegen.modules.common.Resource;
8
9 import com.google.common.collect.ImmutableMap;
10
11
12
13
14 public class UserFormatProperties extends BasicClassModuleProperties
15 {
16
17 public static final String TYPE_NAME = "TYPE_NAME";
18 public static final String TYPE_KEY = "TYPE_KEY";
19 public static final String RESOURCES = "RESOURCES";
20
21 public UserFormatProperties()
22 {
23 this("MyUserFormat");
24 }
25
26 public UserFormatProperties(String fqClassName)
27 {
28 super(fqClassName);
29 setResources(new ArrayList<Resource>());
30 }
31
32 public void setTypeKey(String key)
33 {
34 setProperty(TYPE_KEY, key);
35 }
36
37 public String getTypeKey()
38 {
39 return getProperty(TYPE_KEY);
40 }
41
42 public void setTypeName(String name)
43 {
44 setProperty(TYPE_NAME, name);
45 }
46
47 public String getTypeName()
48 {
49 return getProperty(TYPE_NAME);
50 }
51
52 public void setResources(List<Resource> resources)
53 {
54 put(RESOURCES, resources);
55 }
56
57 public List<Resource> getResources()
58 {
59 return (List<Resource>) get(RESOURCES);
60 }
61
62 public void addResource(Resource resource)
63 {
64 List<Resource> resources = getResources();
65 if (null == resources)
66 {
67 resources = new ArrayList<Resource>();
68 setResources(resources);
69 }
70
71 resources.add(resource);
72 }
73
74 @Override
75 public ImmutableMap<String, String> getI18nProperties()
76 {
77 if (containsKey(TYPE_KEY) && containsKey(TYPE_NAME))
78 {
79 return ImmutableMap.<String, String>builder().putAll(super.getI18nProperties())
80 .put(getProperty(TYPE_KEY), getProperty(TYPE_NAME)).build();
81 }
82 return super.getI18nProperties();
83 }
84 }