]> git.mxchange.org Git - addressbook-war.git/blobdiff - src/java/org/mxchange/addressbook/beans/localization/AddressbookLocalizationSessionBean.java
These log messages are now to noisy + formated array a bit
[addressbook-war.git] / src / java / org / mxchange / addressbook / beans / localization / AddressbookLocalizationSessionBean.java
index dd587438a57e900d2937db39f33fe03829d941b5..aa60644b00dd51e62bb176a8e87c89921b4ecd9c 100644 (file)
@@ -38,33 +38,84 @@ public class AddressbookLocalizationSessionBean extends BaseDatabaseBean impleme
        /**
         * Serial number
         */
-       private static final long serialVersionUID = 1_867_671_657_629_601_528L;
+       private static final long serialVersionUID = 158_768_216_759_107L;
 
        /**
         * Current Locale
         */
        private Locale locale;
 
+       @Override
+       public String getLanguage () {
+               //this.getLoggerBeanLocal().logTrace(MessageFormat.format("AddressbookLocalizationSessionBean::getLanguage(): locale.language={0} - EXIT!", this.getLocale().getLanguage())); //NOI18N
+               return this.getLocale().getLanguage().toLowerCase();
+       }
+
+       @Override
+       public void setLanguage (final String language) {
+               // Log trace message
+               //this.getLoggerBeanLocal().logTrace(MessageFormat.format("AddressbookLocalizationSessionBean::setLanguage: language={0} - CALLED!", language)); //NOI18N
+
+               // Language splits
+               String[] splits = language.split("_"); //NOI18N
+               if (null == splits[1]) {
+                       splits[1] = ""; //NOI18N
+               }
+
+               // Get new locale with upper-case country code
+               Locale loc = new Locale(splits[0], splits[1]);
+
+               // Log debug message
+               //this.getLoggerBeanLocal().logDebug(MessageFormat.format("AddressbookLocalizationSessionBean::setLanguage: loc={0}", loc)); //NOI18N
+
+               // Set it here and in the JSF context
+               this.setLocale(loc);
+               FacesContext.getCurrentInstance().getViewRoot().setLocale(loc);
+
+               // Log trace message
+               //this.getLoggerBeanLocal().logTrace("AddressbookLocalizationSessionBean::setLanguage: EXIT!"); //NOI18N
+       }
+
        @Override
        public Locale getLocale () {
+               //this.getLoggerBeanLocal().logTrace(MessageFormat.format("AddressbookLocalizationSessionBean::getLocale(): locale={0} - EXIT!", this.locale)); //NOI18N
                return this.locale;
        }
 
        @Override
        public void setLocale (final Locale locale) {
+               //this.getLoggerBeanLocal().logTrace(MessageFormat.format("AddressbookLocalizationSessionBean::setLocale(): locale={0} - CALLED!", locale)); //NOI18N
                this.locale = locale;
        }
 
+       @Override
+       public Locale[] getSelectableLocalizations () {
+               Locale[] locales = {
+                       Locale.GERMANY,
+                       Locale.US
+               };
+               return locales;
+       }
+
        /**
         * Initializer for this bean
         */
        @PostConstruct
        public void init () {
+               // Log trace message
+               //this.getLoggerBeanLocal().logTrace("AddressbookLocalizationSessionBean::init: CALLED!"); //NOI18N
+
                // Create locale instance from context
                Locale loc = FacesContext.getCurrentInstance().getExternalContext().getRequestLocale();
 
+               // Log debug message
+               //this.getLoggerBeanLocal().logDebug(MessageFormat.format("AddressbookLocalizationSessionBean::init: loc={0}", loc)); //NOI18N
+
                // Set it here
                this.setLocale(loc);
+
+               // Log trace message
+               //this.getLoggerBeanLocal().logTrace("AddressbookLocalizationSessionBean::init: EXIT!"); //NOI18N
        }
 
 }