Repository: openmeetings Updated Branches: refs/heads/master ad689f3da -> 91a308538
[OPENMEETINGS-1714] more issues are fixed Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/91a30853 Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/91a30853 Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/91a30853 Branch: refs/heads/master Commit: 91a3085383ad5c87754ad8520ee318126e4a4b80 Parents: ad689f3 Author: Maxim Solodovnik <[email protected]> Authored: Fri Sep 29 18:18:17 2017 +0700 Committer: Maxim Solodovnik <[email protected]> Committed: Fri Sep 29 18:18:17 2017 +0700 ---------------------------------------------------------------------- .../openmeetings/core/remote/MobileService.java | 2 +- .../openmeetings/db/dao/label/LabelDao.java | 25 +++++++++++++++++--- .../openmeetings/db/dao/user/UserDao.java | 2 +- .../openmeetings/db/util/LocaleHelper.java | 2 +- .../mail/template/AbstractTemplatePanel.java | 2 +- .../openmeetings/service/user/UserManager.java | 9 +------ .../web/admin/labels/AddLanguageDialog.java | 2 +- .../openmeetings/web/admin/labels/LangForm.java | 2 +- .../openmeetings/web/app/Application.java | 4 ++-- .../web/common/LanguageDropDown.java | 4 ++-- .../web/pages/install/InstallWizard.java | 2 +- .../openmeetings/test/AbstractSpringTest.java | 2 +- 12 files changed, 35 insertions(+), 23 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java index 2310be9..b61ffba 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java @@ -104,7 +104,7 @@ public class MobileService { */ public List<Language> getLanguages() { List<Language> result = new ArrayList<>(); - for (Map.Entry<Long, Locale> e : LabelDao.languages.entrySet()) { + for (Map.Entry<Long, Locale> e : LabelDao.getLanguages()) { result.add(new Language(e.getKey(), e.getValue().toLanguageTag(), e.getValue().getDisplayName(Locale.ENGLISH))); } return result; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java index b9d78bc..025e8e1 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/label/LabelDao.java @@ -67,9 +67,9 @@ public class LabelDao implements IDataProviderDao<StringLabel>{ private static final String KEY_ATTR = "key"; public static final String APP_RESOURCES_EN = "Application.properties.xml"; public static final String APP_RESOURCES = "Application_%s.properties.xml"; - public static final LinkedHashMap<Long, Locale> languages = new LinkedHashMap<>(); //TODO hide it and return unmodifiable map - public static final ConcurrentHashMap<Locale, List<StringLabel>> labelCache = new ConcurrentHashMap<>(); - public static final Set<String> keys = new HashSet<>(); + private static final LinkedHashMap<Long, Locale> languages = new LinkedHashMap<>(); + private static final ConcurrentHashMap<Locale, List<StringLabel>> labelCache = new ConcurrentHashMap<>(); + private static final Set<String> keys = new HashSet<>(); private static Class<?> APP = null; private static void storeLanguages() throws Exception { @@ -215,6 +215,25 @@ public class LabelDao implements IDataProviderDao<StringLabel>{ throw new UnsupportedOperationException("Should not be used"); } + public static Locale getLocale(Long id) { + return languages.get(id); + } + + public static Long getLanguage(Locale loc, Long def) { + if (loc != null) { + for (Map.Entry<Long, Locale> e : languages.entrySet()) { + if (loc.equals(e.getValue())) { + return e.getKey(); + } + } + } + return def; + } + + public static Set<Map.Entry<Long, Locale>> getLanguages() { + return languages.entrySet(); + } + public static List<StringLabel> get(Locale l, final String search, int start, int count, final SortParam<String> sort) { List<StringLabel> result = getLabels(l, search); if (sort != null) { http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java index b52376b..8a1df74 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java @@ -492,7 +492,7 @@ public class UserDao implements IGroupAdminDataProviderDao<User> { to.setLogin(login.length() < getMinLoginLength(cfgDao) ? UUID.randomUUID().toString() : login); to.setFirstname(firstName); to.setLastname(lastName); - to.setLanguageId(null == langId || null == LabelDao.languages.get(langId) ? owner.getLanguageId() : langId.longValue()); + to.setLanguageId(null == langId || null == LabelDao.getLocale(langId) ? owner.getLanguageId() : langId.longValue()); to.setOwnerId(owner.getId()); to.setAddress(new Address()); to.getAddress().setEmail(email); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java index 8b8bf4d..ae6a19d 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/LocaleHelper.java @@ -59,7 +59,7 @@ public class LocaleHelper { public static Locale getLocale(User u) { Long langId = u.getLanguageId(); - Locale locale = langId == 3 ? Locale.GERMANY : LabelDao.languages.get(langId); + Locale locale = langId == 3 ? Locale.GERMANY : LabelDao.getLocale(langId); try { Locale.Builder builder = new Locale.Builder().setLanguage(locale.getLanguage()); if (u.getAddress() != null && u.getAddress().getCountry() != null) { http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java ---------------------------------------------------------------------- diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java index 3f1efc9..25a0d57 100644 --- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java +++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/template/AbstractTemplatePanel.java @@ -47,7 +47,7 @@ public abstract class AbstractTemplatePanel extends Panel { private static Locale getDefault() { Long langId = getBean(ConfigurationDao.class).getLong(CONFIG_DEFAULT_LANG, 1L); - return LabelDao.languages.get(langId); + return LabelDao.getLocale(langId); } public AbstractTemplatePanel(Locale locale) { http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java ---------------------------------------------------------------------- diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java index e8f9542..c94b202 100644 --- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java +++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java @@ -298,14 +298,7 @@ public class UserManager implements IUserManager { @Override public Long getLanguage(Locale loc) { - if (loc != null) { - for (Map.Entry<Long, Locale> e : LabelDao.languages.entrySet()) { - if (loc.equals(e.getValue())) { - return e.getKey(); - } - } - } - return cfgDao.getLong(CONFIG_DEFAULT_LANG, 1L); + return LabelDao.getLanguage(loc, cfgDao.getLong(CONFIG_DEFAULT_LANG, 1L)); } @Override http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java index 970e9e3..b241c43 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java @@ -64,7 +64,7 @@ public class AddLanguageDialog extends AbstractFormDialog<String> { return; } Locale l = Locale.forLanguageTag(s.getValue()); - for (Map.Entry<Long, Locale> e : LabelDao.languages.entrySet()) { + for (Map.Entry<Long, Locale> e : LabelDao.getLanguages()) { if (e.getValue().equals(l)) { s.error(new ValidationError("This code already added")); //FIXME TODO add proper key break; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangForm.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangForm.java index 1bd4d3f..ebe6697 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangForm.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangForm.java @@ -47,7 +47,7 @@ public class LangForm extends Form<Void> { static List<Map.Entry<Long, Locale>> getLanguages() { List<Map.Entry<Long, Locale>> list = new ArrayList<>(); - for (Map.Entry<Long, Locale> e : LabelDao.languages.entrySet()) { + for (Map.Entry<Long, Locale> e : LabelDao.getLanguages()) { list.add(new AbstractMap.SimpleEntry<>(e.getKey(), e.getValue())); } return list; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java index 02c2b69..f433ff7 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java @@ -23,10 +23,10 @@ import static org.apache.openmeetings.db.dao.room.SipDao.SIP_FIRST_NAME; import static org.apache.openmeetings.db.dao.room.SipDao.SIP_USER_NAME; import static org.apache.openmeetings.util.OmFileHelper.SIP_USER_ID; import static org.apache.openmeetings.util.OpenmeetingsVariables.HEADER_XFRAME_SAMEORIGIN; +import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey; import static org.apache.openmeetings.util.OpenmeetingsVariables.getWicketApplicationName; import static org.apache.openmeetings.util.OpenmeetingsVariables.isInitComplete; import static org.apache.openmeetings.util.OpenmeetingsVariables.setWicketApplicationName; -import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey; import static org.apache.openmeetings.web.pages.HashPage.INVITATION_HASH; import static org.apache.openmeetings.web.user.rooms.RoomEnterBehavior.getRoomUrlFragment; import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_MESSAGES; @@ -709,7 +709,7 @@ public class Application extends AuthenticatedWebApplication implements IApplica } public static Locale getLocale(final long languageId) { - Locale loc = LabelDao.languages.get(languageId); + Locale loc = LabelDao.getLocale(languageId); if (loc == null) { loc = Session.exists() ? WebSession.get().getLocale() : Locale.ENGLISH; } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/LanguageDropDown.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/LanguageDropDown.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/LanguageDropDown.java index a1c53e9..e7f45dd 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/LanguageDropDown.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/LanguageDropDown.java @@ -43,7 +43,7 @@ public class LanguageDropDown extends DropDownChoice<Long> { } private void internalInit() { - for (Map.Entry<Long, Locale> e : LabelDao.languages.entrySet()) { + for (Map.Entry<Long, Locale> e : LabelDao.getLanguages()) { languages.add(e.getKey()); } setChoices(languages); @@ -52,7 +52,7 @@ public class LanguageDropDown extends DropDownChoice<Long> { @Override public Object getDisplayValue(Long object) { - return LabelDao.languages.get(object).getDisplayName(); + return LabelDao.getLocale(object).getDisplayName(); } @Override http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java index b02042b..c2ffebb 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java @@ -838,7 +838,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> { super(id); List<SelectOption> list = new ArrayList<>(); - for (Map.Entry<Long, Locale> me : LabelDao.languages.entrySet()) { + for (Map.Entry<Long, Locale> me : LabelDao.getLanguages()) { SelectOption op = new SelectOption(me.getKey().toString(), me.getValue().getDisplayName()); if (getSession().getLocale().equals(me.getValue())) { option = op; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/91a30853/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractSpringTest.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractSpringTest.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractSpringTest.java index c7fcea4..c91eb34 100644 --- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractSpringTest.java +++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/AbstractSpringTest.java @@ -40,7 +40,7 @@ public abstract class AbstractSpringTest extends AbstractJUnit4SpringContextTest setOmHome(); System.setProperty(Constants.SKIP_JARS_PROPERTY, "*"); LabelDao.initLanguageMap(); - if (LabelDao.languages.isEmpty()) { + if (LabelDao.getLanguages().isEmpty()) { fail("Failed to set languages"); } }
