1 package com.atlassian.plugin.web.descriptors;
2
3 import com.atlassian.plugin.Plugin;
4 import com.atlassian.plugin.PluginParseException;
5 import com.atlassian.plugin.StateAware;
6 import com.atlassian.plugin.elements.ResourceDescriptor;
7 import com.atlassian.plugin.elements.ResourceLocation;
8 import com.atlassian.plugin.web.Condition;
9 import com.atlassian.plugin.web.ContextProvider;
10 import com.atlassian.plugin.web.WebInterfaceManager;
11 import com.atlassian.plugin.web.model.WebLabel;
12 import com.atlassian.plugin.web.model.WebParam;
13
14 import org.dom4j.Element;
15
16 import java.util.List;
17 import java.util.Map;
18
19
20
21
22
23 public class DefaultAbstractWebFragmentModuleDescriptor<T> implements StateAware, WebFragmentModuleDescriptor<T>
24 {
25 private final WebFragmentModuleDescriptor<T> decoratedDescriptor;
26
27 public DefaultAbstractWebFragmentModuleDescriptor(final WebFragmentModuleDescriptor<T> abstractDescriptor)
28 {
29 decoratedDescriptor = abstractDescriptor;
30 }
31
32 public void enabled()
33 {
34 decoratedDescriptor.enabled();
35 }
36
37 public void disabled()
38 {
39 decoratedDescriptor.disabled();
40 }
41
42 protected WebFragmentModuleDescriptor<T> getDecoratedDescriptor()
43 {
44 return decoratedDescriptor;
45 }
46
47 public int getWeight()
48 {
49 return decoratedDescriptor.getWeight();
50 }
51
52 public String getKey()
53 {
54 return decoratedDescriptor.getKey();
55 }
56
57 public T getModule()
58 {
59 return decoratedDescriptor.getModule();
60 }
61
62 public String getI18nNameKey()
63 {
64 return decoratedDescriptor.getI18nNameKey();
65 }
66
67 public String getDescriptionKey()
68 {
69 return decoratedDescriptor.getDescriptionKey();
70 }
71
72 public Plugin getPlugin()
73 {
74 return decoratedDescriptor.getPlugin();
75 }
76
77 public WebLabel getWebLabel()
78 {
79 return decoratedDescriptor.getWebLabel();
80 }
81
82 public WebLabel getTooltip()
83 {
84 return decoratedDescriptor.getTooltip();
85 }
86
87 public void setWebInterfaceManager(final WebInterfaceManager webInterfaceManager)
88 {
89
90 if (decoratedDescriptor instanceof AbstractWebFragmentModuleDescriptor)
91 {
92 final AbstractWebFragmentModuleDescriptor<T> abstractWebFragmentModuleDescriptor = (AbstractWebFragmentModuleDescriptor<T>) decoratedDescriptor;
93 abstractWebFragmentModuleDescriptor.setWebInterfaceManager(webInterfaceManager);
94 }
95 }
96
97 public Condition getCondition()
98 {
99 return decoratedDescriptor.getCondition();
100 }
101
102 public ContextProvider getContextProvider()
103 {
104 return decoratedDescriptor.getContextProvider();
105 }
106
107 public WebParam getWebParams()
108 {
109 return decoratedDescriptor.getWebParams();
110 }
111
112
113 public String getCompleteKey()
114 {
115 return decoratedDescriptor.getCompleteKey();
116 }
117
118 public String getPluginKey()
119 {
120 return decoratedDescriptor.getPluginKey();
121 }
122
123 public String getName()
124 {
125 return decoratedDescriptor.getName();
126 }
127
128 public String getDescription()
129 {
130 return decoratedDescriptor.getDescription();
131 }
132
133 public Class<T> getModuleClass()
134 {
135 return decoratedDescriptor.getModuleClass();
136 }
137
138 public void init(final Plugin plugin, final Element element) throws PluginParseException
139 {
140 decoratedDescriptor.init(plugin, element);
141 }
142
143 public boolean isEnabledByDefault()
144 {
145 return decoratedDescriptor.isEnabledByDefault();
146 }
147
148 public boolean isSystemModule()
149 {
150 return decoratedDescriptor.isSystemModule();
151 }
152
153 public void destroy(final Plugin plugin)
154 {
155 decoratedDescriptor.destroy(plugin);
156 }
157
158 public Float getMinJavaVersion()
159 {
160 return decoratedDescriptor.getMinJavaVersion();
161 }
162
163 public boolean satisfiesMinJavaVersion()
164 {
165 return decoratedDescriptor.satisfiesMinJavaVersion();
166 }
167
168 public Map<String, String> getParams()
169 {
170 return decoratedDescriptor.getParams();
171 }
172
173
174
175 public List<ResourceDescriptor> getResourceDescriptors()
176 {
177 return decoratedDescriptor.getResourceDescriptors();
178 }
179
180 public List<ResourceDescriptor> getResourceDescriptors(final String type)
181 {
182 return decoratedDescriptor.getResourceDescriptors(type);
183 }
184
185 public ResourceLocation getResourceLocation(final String type, final String name)
186 {
187 return decoratedDescriptor.getResourceLocation(type, name);
188 }
189
190 public ResourceDescriptor getResourceDescriptor(final String type, final String name)
191 {
192 return decoratedDescriptor.getResourceDescriptor(type, name);
193 }
194
195 @Override
196 public String toString()
197 {
198 return decoratedDescriptor.toString();
199 }
200 }