]> git.mxchange.org Git - jjobs-war.git/commitdiff
Please cherry-pick:
authorRoland Häder <roland@mxchange.org>
Sat, 19 Aug 2017 12:06:13 +0000 (14:06 +0200)
committerRoland Häder <roland@mxchange.org>
Sat, 19 Aug 2017 12:06:13 +0000 (14:06 +0200)
- added missing event observing methods and fixed error to them
- well, in a RequestScoped-annotated bean, this won't help, which means won't work
- which needs rewrite again ... :-/

Signed-off-by: Roland Häder <roland@mxchange.org>
src/java/org/mxchange/jjobs/beans/user/JobsAdminUserWebRequestBean.java
src/java/org/mxchange/jjobs/beans/user/JobsUserWebSessionBean.java
src/java/org/mxchange/jjobs/beans/user/resendlink/JobsResendLinkWebSessionBean.java

index 882f886db76c26001b5636a9c0b9dbba4719894c..24720c2d797edd3cc4fe8c84d831bd6c57a93a77 100644 (file)
@@ -17,6 +17,7 @@
 package org.mxchange.jjobs.beans.user;
 
 import java.text.MessageFormat;
+import java.util.Locale;
 import java.util.Objects;
 import javax.annotation.PostConstruct;
 import javax.enterprise.context.RequestScoped;
@@ -31,6 +32,7 @@ import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
 import org.mxchange.jcontacts.contact.Contact;
+import org.mxchange.jcoreee.events.locale.ObservableLocaleChangeEvent;
 import org.mxchange.jcoreee.utils.FacesUtils;
 import org.mxchange.jjobs.beans.BaseJobsController;
 import org.mxchange.jjobs.beans.contact.JobsAdminContactWebRequestController;
@@ -123,6 +125,11 @@ public class JobsAdminUserWebRequestBean extends BaseJobsController implements J
        @Any
        private Event<ObservableAdminDeletedUserEvent> deleteUserEvent;
 
+       /**
+        * Locale instance
+        */
+       private Locale locale;
+
        /**
         * Localization controller
         */
@@ -242,7 +249,7 @@ public class JobsAdminUserWebRequestBean extends BaseJobsController implements J
                newUser.setUserProfileMode(ProfileMode.INVISIBLE);
 
                // Copy user locale
-               newUser.setUserLocale(this.localizationController.getLocale());
+               newUser.setUserLocale(this.getLocale());
 
                // Init instance
                Contact userContact;
@@ -352,6 +359,26 @@ public class JobsAdminUserWebRequestBean extends BaseJobsController implements J
                this.setUser(event.getCreatedUser());
        }
 
+       /**
+        * Observer method for events being fired when the application's locale has
+        * been changed.
+        * <p>
+        * @param event Event being fired
+        */
+       public void afterLocaleChangeEvent (@Observes final ObservableLocaleChangeEvent event) {
+               // Is the parameter valid?
+               if (null == event) {
+                       // Throw NPE
+                       throw new NullPointerException("event is null");
+               } else if (event.getLocale() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("event.locale is null");
+               }
+
+               // Set it here
+               this.setLocale(event.getLocale());
+       }
+
        /**
         * Event observer for new user registrations
         * <p>
@@ -768,6 +795,24 @@ public class JobsAdminUserWebRequestBean extends BaseJobsController implements J
                this.setUserName(null);
        }
 
+       /**
+        * Getter for locale instance
+        * <p>
+        * @return Locale instance
+        */
+       private Locale getLocale () {
+               return this.locale;
+       }
+
+       /**
+        * Setter for locale instance
+        * <p>
+        * @param locale Locale instance
+        */
+       private void setLocale (final Locale locale) {
+               this.locale = locale;
+       }
+
        /**
         * Checks if same password is entered and that they are not empty.
         * <p>
index 36f826ca5ec8af7ecc23a2f15330f3e1768c415c..feae3d46ea8570ded1c31c67a4c9e820bdf83a71 100644 (file)
@@ -19,6 +19,7 @@ package org.mxchange.jjobs.beans.user;
 import java.text.MessageFormat;
 import java.util.Iterator;
 import java.util.List;
+import java.util.Locale;
 import java.util.Objects;
 import javax.annotation.PostConstruct;
 import javax.enterprise.context.SessionScoped;
@@ -33,6 +34,7 @@ import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
 import org.mxchange.jcontacts.contact.Contact;
+import org.mxchange.jcoreee.events.locale.ObservableLocaleChangeEvent;
 import org.mxchange.jjobs.beans.BaseJobsController;
 import org.mxchange.jjobs.beans.contact.JobsContactWebSessionController;
 import org.mxchange.jjobs.beans.features.JobsFeaturesWebApplicationController;
@@ -88,6 +90,11 @@ public class JobsUserWebSessionBean extends BaseJobsController implements JobsUs
        @Inject
        private JobsFeaturesWebApplicationController featureController;
 
+       /**
+        * Locale instance
+        */
+       private Locale locale;
+
        /**
         * Localization controller
         */
@@ -361,6 +368,26 @@ public class JobsUserWebSessionBean extends BaseJobsController implements JobsUs
                this.copyUser(user);
        }
 
+       /**
+        * Observer method for events being fired when the application's locale has
+        * been changed.
+        * <p>
+        * @param event Event being fired
+        */
+       public void afterLocaleChangeEvent (@Observes final ObservableLocaleChangeEvent event) {
+               // Is the parameter valid?
+               if (null == event) {
+                       // Throw NPE
+                       throw new NullPointerException("event is null");
+               } else if (event.getLocale() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("event.locale is null");
+               }
+
+               // Set it here
+               this.setLocale(event.getLocale());
+       }
+
        /**
         * Event observer when user confirmed account.
         * <p>
@@ -617,7 +644,7 @@ public class JobsUserWebSessionBean extends BaseJobsController implements JobsUs
                // Set user name profile mode and locale
                user.setUserName(this.getUserName());
                user.setUserProfileMode(this.getUserProfileMode());
-               user.setUserLocale(this.localizationController.getLocale());
+               user.setUserLocale(this.getLocale());
 
                // Is multiple registration page
                if ((createContactData) || (!this.featureController.isFeatureEnabled("user_register_multiple_page"))) { //NOI18N
@@ -1094,6 +1121,24 @@ public class JobsUserWebSessionBean extends BaseJobsController implements JobsUs
                this.setUserProfileMode(user.getUserProfileMode());
        }
 
+       /**
+        * Getter for locale instance
+        * <p>
+        * @return Locale instance
+        */
+       private Locale getLocale () {
+               return this.locale;
+       }
+
+       /**
+        * Setter for locale instance
+        * <p>
+        * @param locale Locale instance
+        */
+       private void setLocale (final Locale locale) {
+               this.locale = locale;
+       }
+
        /**
         * Removes user from all lists
         * <p>
index 23658c34c4a2afee31ad5b481cabb40329f0313d..426012e0e0d0ca2e578a803591d74424e0339e01 100644 (file)
  */
 package org.mxchange.jjobs.beans.user.resendlink;
 
+import java.util.Locale;
 import javax.annotation.PostConstruct;
 import javax.enterprise.context.SessionScoped;
 import javax.enterprise.event.Event;
+import javax.enterprise.event.Observes;
 import javax.enterprise.inject.Any;
 import javax.faces.view.facelets.FaceletException;
 import javax.inject.Inject;
@@ -26,6 +28,7 @@ import javax.inject.Named;
 import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
+import org.mxchange.jcoreee.events.locale.ObservableLocaleChangeEvent;
 import org.mxchange.jcoreee.utils.FacesUtils;
 import org.mxchange.jjobs.beans.BaseJobsController;
 import org.mxchange.jjobs.beans.localization.JobsLocalizationSessionController;
@@ -59,6 +62,11 @@ public class JobsResendLinkWebSessionBean extends BaseJobsController implements
         */
        private String emailAddress;
 
+       /**
+        * Locale instance
+        */
+       private Locale locale;
+
        /**
         * Localization controller
         */
@@ -91,6 +99,26 @@ public class JobsResendLinkWebSessionBean extends BaseJobsController implements
                super();
        }
 
+       /**
+        * Observer method for events being fired when the application's locale has
+        * been changed.
+        * <p>
+        * @param event Event being fired
+        */
+       public void afterLocaleChangeEvent (@Observes final ObservableLocaleChangeEvent event) {
+               // Is the parameter valid?
+               if (null == event) {
+                       // Throw NPE
+                       throw new NullPointerException("event is null");
+               } else if (event.getLocale() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("event.locale is null");
+               }
+
+               // Set it here
+               this.setLocale(event.getLocale());
+       }
+
        /**
         * Resends (new) confirmation link to given email address, if found.
         * Otherwise an exception is thrown. On success a redirect takes place.
@@ -147,7 +175,7 @@ public class JobsResendLinkWebSessionBean extends BaseJobsController implements
                        String baseUrl = FacesUtils.generateBaseUrl();
 
                        // Call EJB and return redirect target
-                       managedUser = this.resendLinkBean.resendConfirmationLink(user, this.localizationController.getLocale(), baseUrl);
+                       managedUser = this.resendLinkBean.resendConfirmationLink(user, this.getLocale(), baseUrl);
                } catch (final UserNotFoundException ex) {
                        // User not found
                        this.showFacesMessage("form_resend_link:resendEmailAddress", "ERROR_USER_NOT_FOUND"); //NOI18N
@@ -186,6 +214,24 @@ public class JobsResendLinkWebSessionBean extends BaseJobsController implements
                this.emailAddress = emailAddress;
        }
 
+       /**
+        * Getter for locale instance
+        * <p>
+        * @return Locale instance
+        */
+       private Locale getLocale () {
+               return this.locale;
+       }
+
+       /**
+        * Setter for locale instance
+        * <p>
+        * @param locale Locale instance
+        */
+       private void setLocale (final Locale locale) {
+               this.locale = locale;
+       }
+
        /**
         * Post-construction method
         */