X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2Fjava%2Forg%2Fmxchange%2Fpizzaapplication%2Fbeans%2Fuser%2FPizzaUserWebRequestBean.java;h=cbde14a2ec7f1b2a1646f21f981d9cf3463b14ac;hb=aa445e02ba07fa1e2ff0bcc030b6a32a550d075a;hp=24cc2a1c068f53d67c870a0b29db26116e2490ea;hpb=7920e83ba35b53cd6dc6f9685ba88e7418cdef43;p=pizzaservice-war.git diff --git a/src/java/org/mxchange/pizzaapplication/beans/user/PizzaUserWebRequestBean.java b/src/java/org/mxchange/pizzaapplication/beans/user/PizzaUserWebRequestBean.java index 24cc2a1c..cbde14a2 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/user/PizzaUserWebRequestBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/user/PizzaUserWebRequestBean.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2016, 2017 Roland Häder + * Copyright (C) 2016, 2020 Free Software Foundation * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as @@ -16,6 +16,7 @@ */ package org.mxchange.pizzaapplication.beans.user; +import fish.payara.cdi.jsr107.impl.NamedCache; import java.text.MessageFormat; import java.util.Iterator; import java.util.LinkedList; @@ -23,8 +24,9 @@ import java.util.List; import java.util.Locale; import java.util.Objects; import javax.annotation.PostConstruct; +import javax.cache.Cache; import javax.ejb.EJB; -import javax.enterprise.context.SessionScoped; +import javax.enterprise.context.RequestScoped; import javax.enterprise.event.Event; import javax.enterprise.event.Observes; import javax.enterprise.inject.Any; @@ -34,7 +36,6 @@ import javax.inject.Inject; import javax.inject.Named; import org.mxchange.jcontacts.model.contact.Contact; import org.mxchange.jcoreee.events.locale.ObservableLocaleChangeEvent; -import org.mxchange.jfinancials.beans.user.PizzaUserWebRequestController; import org.mxchange.jusercore.events.user.add.ObservableAdminAddedUserEvent; import org.mxchange.jusercore.events.user.clear.password.ObservableClearUserPasswordEvent; import org.mxchange.jusercore.events.user.clear.username.ObservableClearUserNameEvent; @@ -58,7 +59,7 @@ import org.mxchange.juserlogincore.events.registration.ObservableUserRegisteredE import org.mxchange.juserlogincore.events.user.password_change.ObservableUpdatedUserPasswordEvent; import org.mxchange.juserlogincore.exceptions.UserPasswordMismatchException; import org.mxchange.juserlogincore.login.UserLoginUtils; -import org.mxchange.pizzaapplication.beans.BasePizzaController; +import org.mxchange.pizzaapplication.beans.BasePizzaBean; import org.mxchange.pizzaapplication.beans.contact.PizzaContactWebRequestController; import org.mxchange.pizzaapplication.beans.features.PizzaFeaturesWebApplicationController; import org.mxchange.pizzaapplication.beans.localization.PizzaLocalizationSessionController; @@ -70,8 +71,8 @@ import org.mxchange.pizzaapplication.beans.user.login.PizzaUserLoginWebSessionCo * @author Roland Häder */ @Named ("userController") -@SessionScoped -public class PizzaUserWebRequestBean extends BasePizzaController implements PizzaUserWebRequestController { +@RequestScoped +public class PizzaUserWebRequestBean extends BasePizzaBean implements PizzaUserWebRequestController { /** * Serial number @@ -111,20 +112,20 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz /** * Remote user bean */ - @EJB (lookup = "java:global/jfinancials-ejb/user!org.mxchange.jusercore.model.user.UserSessionBeanRemote") + @EJB (lookup = "java:global/pizzaservice-ejb/user!org.mxchange.jusercore.model.user.UserSessionBeanRemote") private UserSessionBeanRemote userBean; /** - * User id + * A list of all user profiles */ - private Long userId; + @Inject + @NamedCache (cacheName = "userCache") + private Cache userCache; /** - * A list of all user profiles + * User id */ - @Inject - @Cached (cacheName = "userCache") - private transient Cache userCache; + private Long userId; /** * Login controller (bean) @@ -141,8 +142,8 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz * User name list */ @Inject - @Cached (cacheName = "userNameCache") - private transient Cache userNameCache; + @NamedCache (cacheName = "userNameCache") + private Cache userNameCache; /** * User password (clear-text from web form) @@ -359,7 +360,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz } // Get user instance - User user = event.getCreatedUser(); + final User user = event.getCreatedUser(); // Set all fields here this.copyUser(user); @@ -432,7 +433,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz } // "Cache" user instance - User loggedInUser = event.getLoggedInUser(); + final User loggedInUser = event.getLoggedInUser(); // Copy all data to this bean this.copyUser(loggedInUser); @@ -483,7 +484,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz } // Get user instance - User registeredUser = event.getRegisteredUser(); + final User registeredUser = event.getRegisteredUser(); // Copy all data from registered->user this.copyUser(registeredUser); @@ -556,10 +557,10 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz @SuppressWarnings ("ReturnOfCollectionOrArrayField") public List allUsers () { // Init list - List list = new LinkedList<>(); + final List list = new LinkedList<>(); // Get iterator - Iterator> iterator = this.userCache.iterator(); + final Iterator> iterator = this.userCache.iterator(); // Loop over all while (iterator.hasNext()) { @@ -608,14 +609,11 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz @Override public User createUserInstance (final boolean createContactData) { - // Trace message - //* NOISY-DEBUG: */ System.out.println(MessageFormat.format("{0}.createUserInstance: CALLED!", this.getClass().getSimpleName())); - // Required personal data must be set assert (this.isRequiredPersonalDataSet()) : "not all personal data is set"; //NOI18N // Create new user instance - User user = new LoginUser(); + final User user = new LoginUser(); // Is user name required? if (!this.isUserNameRequired()) { @@ -642,25 +640,18 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz // Is multiple registration page if ((createContactData) || (!this.featureController.isFeatureEnabled("user_register_multiple_page"))) { //NOI18N // Create contact instance - Contact contact = this.contactController.createContactInstance(); + final Contact contact = this.contactController.createContactInstance(); - // Debug message - //* NOISY-DEBUG: */ System.out.println(MessageFormat.format("{0}.createUserInstance: contact={1}", this.getClass().getSimpleName(), contact)); // Set contact in user user.setUserContact(contact); } - // Trace message - //* NOISY-DEBUG: */ System.out.println(MessageFormat.format("{0}.createUserInstance: user={1} - EXIT!", this.getClass().getSimpleName(), user)); // Return it return user; } @Override public User createUserLogin () { - // Trace message - //* NOISY-DEBUG */ System.out.println(MessageFormat.format("{0}.createUserLogin: CALLED!", this.getClass().getSimpleName())); - // Is all data set? if (this.getUserName() == null) { // Throw NPE @@ -671,13 +662,11 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz } // Create new user instance - User user = new LoginUser(); + final User user = new LoginUser(); // Update all data ... user.setUserName(this.getUserName()); - // Trace message - //* NOISY-DEBUG */ System.out.println(MessageFormat.format("{0}.createUserLogin: user={1} - EXIT!", this.getClass().getSimpleName(), user)); // Return the new instance return user; } @@ -700,7 +689,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz } // Get user instance - User user = this.userLoginController.getLoggedInUser(); + final User user = this.userLoginController.getLoggedInUser(); // Copy contact data to contact instance this.contactController.updateContactDataFromController(user.getUserContact()); @@ -717,7 +706,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz user.setUserProfileMode(this.getUserProfileMode()); // Send it to the EJB - User updatedUser = this.userBean.updateUserPersonalData(user); + final User updatedUser = this.userBean.updateUserPersonalData(user); // Fire event this.updatedPersonalDataEvent.fire(new UpdatedUserPersonalDataEvent(updatedUser)); @@ -828,7 +817,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz // Is cache there? if (!this.userCache.iterator().hasNext()) { // Get whole list - List list = this.userBean.allUsers(); + final List list = this.userBean.allUsers(); // Add all for (final Iterator iterator = list.iterator(); iterator.hasNext();) { @@ -860,12 +849,12 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz boolean isFound = false; // Get iterator - Iterator iterator = this.allUsers().iterator(); + final Iterator iterator = this.allUsers().iterator(); // Loop through all entries while (iterator.hasNext()) { // Get user - User next = iterator.next(); + final User next = iterator.next(); // Compare both objects if (Objects.equals(contact, next.getUserContact())) { @@ -882,10 +871,10 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz @Override public boolean isPublicUserProfileEnabled () { // Get context parameter - String contextParameter = FacesContext.getCurrentInstance().getExternalContext().getInitParameter("is_public_profile_enabled"); //NOI18N + final String contextParameter = FacesContext.getCurrentInstance().getExternalContext().getInitParameter("is_public_profile_enabled"); //NOI18N // Is it set? - boolean isEnabled = ((contextParameter instanceof String) && (contextParameter.toLowerCase().equals("true"))); //NOI18N + final boolean isEnabled = ((contextParameter instanceof String) && (contextParameter.toLowerCase().equals("true"))); //NOI18N // This requires user names being enabled, too. if ((isEnabled) && (!this.isUserNameRequired())) { @@ -937,10 +926,10 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz @Override public boolean isUserNameRequired () { // Get context parameter - String contextParameter = FacesContext.getCurrentInstance().getExternalContext().getInitParameter("is_user_login_require_user_name"); //NOI18N + final String contextParameter = FacesContext.getCurrentInstance().getExternalContext().getInitParameter("is_user_login_require_user_name"); //NOI18N // Is it set? - boolean isRequired = ((contextParameter instanceof String) && (contextParameter.toLowerCase().equals("true"))); //NOI18N + final boolean isRequired = ((contextParameter instanceof String) && (contextParameter.toLowerCase().equals("true"))); //NOI18N // Return value return isRequired; @@ -963,7 +952,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz // Try to lookup it in visible user list for (final Iterator> iterator = this.userCache.iterator(); iterator.hasNext();) { // Get next user - Cache.Entry next = iterator.next(); + final Cache.Entry next = iterator.next(); // Contact should be set if (next.getValue().getUserContact() == null) { @@ -1009,7 +998,7 @@ public class PizzaUserWebRequestBean extends BasePizzaController implements Pizz // Try to lookup it in visible user list for (final Iterator> iterator = this.userCache.iterator(); iterator.hasNext();) { // Get next user - Cache.Entry next = iterator.next(); + final Cache.Entry next = iterator.next(); // Is the user id found? if (Objects.equals(next.getKey(), userId)) {