1 package com.atlassian.jira.plugin.webfragment.contextproviders;
2
3 import java.util.HashMap;
4 import java.util.Map;
5
6 import com.atlassian.jira.ComponentManager;
7 import com.atlassian.jira.plugin.webfragment.model.JiraHelper;
8 import com.atlassian.jira.scheme.SchemeManager;
9 import com.atlassian.jira.web.action.admin.link.scheme.I18nLinkScheme;
10 import com.atlassian.jira.web.bean.I18nBean;
11 import com.opensymphony.user.User;
12
13
14
15
16
17
18
19
20 public abstract class ASchemeContextProvider extends AbstractJiraContextProvider {
21
22 protected I18nBean i18nBean;
23
24 public ASchemeContextProvider() {
25 }
26
27 public Map getContextMap(User user, JiraHelper jiraHelper) {
28 Map context = new HashMap();
29 context.put("schemeManager", getSchemeManager(getSchemeManagerClass()));
30 context.put("i18n", getI18nBean());
31 return context;
32 }
33
34 protected I18nBean getI18nBean() {
35 if (i18nBean==null) {
36 i18nBean = new I18nBean();
37 i18nBean.getI18nLocations().add(I18nLinkScheme.class.getName());
38 }
39 return i18nBean;
40 }
41
42 public SchemeManager getSchemeManager(Class schemeManagerClass) {
43 return (SchemeManager)ComponentManager.getComponentInstanceOfType(schemeManagerClass);
44 }
45
46 public abstract Class getSchemeManagerClass();
47
48 }