]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms.e4/src/org/argeo/cms/e4/handlers/LocaleAddon.java
Introduce E4 privileged job
[lgpl/argeo-commons.git] / org.argeo.cms.e4 / src / org / argeo / cms / e4 / handlers / LocaleAddon.java
1 package org.argeo.cms.e4.handlers;
2
3 import java.security.AccessController;
4 import java.util.Locale;
5 import java.util.Set;
6
7 import javax.annotation.PostConstruct;
8 import javax.security.auth.Subject;
9
10 import org.argeo.eclipse.ui.specific.UiContext;
11 import org.eclipse.e4.core.services.nls.ILocaleChangeService;
12
13 public class LocaleAddon {
14 @PostConstruct
15 public void init(ILocaleChangeService localeChangeService) {
16 Subject subject = Subject.getSubject(AccessController.getContext());
17 Set<Locale> locales = subject.getPublicCredentials(Locale.class);
18 if (!locales.isEmpty()) {
19 Locale locale = locales.iterator().next();
20 localeChangeService.changeApplicationLocale(locale);
21 UiContext.setLocale(locale);
22 }
23 }
24 }