]> git.mxchange.org Git - pizzaservice-ejb.git/commitdiff
Please cherry-pick:
authorRoland Häder <roland@mxchange.org>
Thu, 16 Apr 2020 20:04:23 +0000 (22:04 +0200)
committerRoland Häder <roland@mxchange.org>
Fri, 17 Apr 2020 16:23:34 +0000 (18:23 +0200)
- renamed allFoos() to fetchAllFoos()
- cleanup of deprecated/no longer needed business methods as fetchAllFoos() can
  be used instead
- splitted mobile number relevant business methods into separate EJB, this
  allows better load-balancing on servers with many CPU cores
- UserLoginSessionBean is now superflous and can be removed

Signed-off-by: Roland Häder <roland@mxchange.org>
24 files changed:
src/java/org/mxchange/jcontacts/model/contact/PizzaAdminContactSessionBean.java
src/java/org/mxchange/jcontacts/model/contact/PizzaContactSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/basicdata/PizzaAdminBusinessDataSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/basicdata/PizzaBusinessDataSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/branchoffice/PizzaAdminBranchOfficeSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/branchoffice/PizzaBranchOfficeSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/department/PizzaAdminDepartmentSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/department/PizzaDepartmentSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/employee/PizzaAdminEmployeeSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/employee/PizzaEmployeeSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/headquarter/PizzaAdminHeadquarterSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/headquarter/PizzaHeadquarterSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/opening_time/PizzaAdminOpeningTimesSessionBean.java
src/java/org/mxchange/jcontactsbusiness/model/opening_time/PizzaOpeningTimesSessionBean.java
src/java/org/mxchange/jcountry/model/data/PizzaAdminCountrySingletonBean.java
src/java/org/mxchange/jcountry/model/data/PizzaCountrySingletonBean.java
src/java/org/mxchange/jphone/model/phonenumbers/mobile/FinancialsAdminMobileSessionBean.java [new file with mode: 0644]
src/java/org/mxchange/jphone/model/phonenumbers/mobile/FinancialsMobileSessionBean.java [new file with mode: 0644]
src/java/org/mxchange/jphone/model/phonenumbers/mobileprovider/PizzaMobileProviderSingletonBean.java
src/java/org/mxchange/jphone/model/phonenumbers/phone/PizzaAdminPhoneSessionBean.java
src/java/org/mxchange/jphone/model/phonenumbers/phone/PizzaPhoneSessionBean.java
src/java/org/mxchange/jusercore/model/user/PizzaUserSessionBean.java
src/java/org/mxchange/jusercore/model/user/email_address/PizzaUserEmailChangeSessionBean.java
src/java/org/mxchange/jusercore/model/user/password_history/PizzaUserPasswordHistorySessionBean.java

index a02662d6568b4d7929ca981601b8e260811c198d..ffae8557290f7dc20907f68e9fbbbe81a6aee78a 100644 (file)
@@ -130,7 +130,7 @@ public class PizzaAdminContactSessionBean extends BasePizzaEnterpriseBean implem
                boolean isFound = false;
 
                // Fest all entries and iterate over them
-               for (final Contact currentContact : this.contactBean.allContacts()) {
+               for (final Contact currentContact : this.contactBean.fetchAllContacts()) {
                        // Is found?
                        if (Objects.equals(contact, currentContact)) {
                                // Yes, found the same
index b5134cab741322c95f6896b6fbccd4e7af10fd5c..54c642c03373409a18d1d78b66369d187e2336c1 100644 (file)
@@ -18,7 +18,6 @@ package org.mxchange.jcontacts.model.contact;
 
 import java.text.MessageFormat;
 import java.util.List;
-import java.util.Objects;
 import javax.ejb.Stateless;
 import javax.persistence.NoResultException;
 import javax.persistence.Query;
@@ -48,7 +47,7 @@ public class PizzaContactSessionBean extends BasePizzaEnterpriseBean implements
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<Contact> allContacts () {
+       public List<Contact> fetchAllContacts () {
                // Log trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.getAllContacts - CALLED!", this.getClass().getSimpleName())); //NOI18N
 
@@ -65,58 +64,6 @@ public class PizzaContactSessionBean extends BasePizzaEnterpriseBean implements
                return contacts;
        }
 
-       @Override
-       public Contact lookupContact (final Contact contact) {
-               // Log trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isContactFound: contact={1} - CALLED!", this.getClass().getSimpleName(), contact)); //NOI18N
-
-               // Parameter should be valid
-               if (null == contact) {
-                       // Throw NPE
-                       throw new NullPointerException("contact is null"); //NOI18N
-               } else if ((contact.getContactId() instanceof Long) && (contact.getContactId() > 0)) {
-                       try {
-                               // Id set, ask other method
-                               return this.findContactById(contact.getContactId());
-                       } catch (final ContactNotFoundException ex) {
-                               // Not found, should not happen
-                               throw new IllegalStateException(MessageFormat.format("contact.contactId={0} is set, but not found.", contact.getContactId()), ex); //NOI18N
-                       }
-               }
-
-               // Default is not found
-               Contact foundContact = null;
-
-               // Get whole list
-               final List<Contact> contacts = this.allContacts();
-
-               // Is the list empty?
-               if (contacts.isEmpty()) {
-                       // Then abort here
-                       this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isContactFound: No contacts registered, returning NULL ...", this.getClass().getSimpleName())); //NOI18N
-                       return null;
-               }
-
-               // Loop through all
-               for (final Contact currentContact : contacts) {
-                       // Is same contact?
-                       if ((Objects.equals(contact, currentContact)) || (Contacts.isSameContact(contact, currentContact))) {
-                               // Debug message
-                               this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.isContactFound: Found same contact: contactId={1}", this.getClass().getSimpleName(), currentContact.getContactId())); //NOI18N
-
-                               // Found it
-                               foundContact = currentContact;
-                               break;
-                       }
-               }
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isContactFound: foundContact={1} - EXIT!", this.getClass().getSimpleName(), foundContact)); //NOI18N
-
-               // Return found contact
-               return foundContact;
-       }
-
        @Override
        public Contact updateContactData (final Contact contact, final boolean isCellphoneUnlinked, final boolean isLandlineUnlinked, final boolean isFaxUnlinked) {
                // Log trace message
index 6ade86ced746f5d7e011b87c5e361055f06df9ae..b8a97f5e697cb961670f9156a103a3141cf4e3a6 100644 (file)
@@ -147,7 +147,7 @@ public class PizzaAdminBusinessDataSessionBean extends BasePizzaEnterpriseBean i
                boolean isFound = false;
 
                // Then check each entry
-               for (final BasicData currentBasicData : this.businessDataBean.allBusinessBasicData()) {
+               for (final BasicData currentBasicData : this.businessDataBean.fetchAllBusinessBasicData()) {
                        // Is the company name matching?
                        if (Objects.equals(currentBasicData.getCompanyName(), basicData.getCompanyName())) {
                                // Found match
@@ -171,7 +171,7 @@ public class PizzaAdminBusinessDataSessionBean extends BasePizzaEnterpriseBean i
                boolean isFound = false;
 
                // Then check each entry
-               for (final BasicData currentBasicData : this.businessDataBean.allBusinessBasicData()) {
+               for (final BasicData currentBasicData : this.businessDataBean.fetchAllBusinessBasicData()) {
                        // Is the company name matching?
                        if (Objects.equals(currentBasicData.getCompanyShortName(), basicData.getCompanyShortName())) {
                                // Found match
index d9e0acb38db0f3cc79d0629e696f4ad28a815d78..816c4a4b1978e83ef72652534a4715ed9b9c9ec7 100644 (file)
@@ -45,7 +45,7 @@ public class PizzaBusinessDataSessionBean extends BasePizzaEnterpriseBean implem
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<BasicData> allBusinessBasicData () {
+       public List<BasicData> fetchAllBusinessBasicData () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allBusinessContacts: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
index 0f036c0fef5d24b3ec8034d3f75ced29948363da..1b1d2a52b03df9857aafbccd3c2c089fa69b2629 100644 (file)
@@ -74,7 +74,7 @@ public class PizzaAdminBranchOfficeSessionBean extends BasePizzaEnterpriseBean i
                }
 
                // Add created timestamp
-               branchOffice.setBranchCreated(new Date());
+               branchOffice.setBranchEntryCreated(new Date());
 
                // Is user instance set?
                if (branchOffice.getBranchCompany() instanceof BasicData) {
@@ -142,7 +142,7 @@ public class PizzaAdminBranchOfficeSessionBean extends BasePizzaEnterpriseBean i
         */
        private boolean isBranchOfficeFound (final BranchOffice branchOffice) {
                // Get whole list
-               final List<BranchOffice> branchOffices = this.branchOfficeBean.allBranchOffices();
+               final List<BranchOffice> branchOffices = this.branchOfficeBean.fetchAllBranchOffices();
 
                // Default is not found
                boolean isFound = false;
index 29a4b34523aba7e8f8ae5113c1fd88795bbebafd..0b242d51cf63a74a14e2395647f2c3d42c842981 100644 (file)
@@ -37,7 +37,7 @@ public class PizzaBranchOfficeSessionBean extends BasePizzaEnterpriseBean implem
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<BranchOffice> allBranchOffices () {
+       public List<BranchOffice> fetchAllBranchOffices () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allBranchOffices: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
index 1f9bb23b26df9beab0cc021ab932165c77b526c7..bd6f4a7ace7e001df0ef296bb8638fd811e232e1 100644 (file)
@@ -154,7 +154,7 @@ public class PizzaAdminDepartmentSessionBean extends BasePizzaEnterpriseBean imp
         */
        private boolean isDepartmentFound (final Department department) {
                // Get whole list
-               final List<Department> departments = this.departmentBean.allDepartments();
+               final List<Department> departments = this.departmentBean.fetchAllDepartments();
 
                // Default is not found
                boolean isFound = false;
index 92558985b2eb72b494b4567195013d5e5a66419d..46fea82c683a5885f0aee887a5ffaa6766057758 100644 (file)
@@ -37,7 +37,7 @@ public class PizzaDepartmentSessionBean extends BasePizzaEnterpriseBean implemen
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<Department> allDepartments () {
+       public List<Department> fetchAllDepartments () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allDepartments: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
index 57cb880f078c317bc3a3b421d077e639720df1e2..c1817d451a623762d5a1e71b8a8868c4270b8246 100644 (file)
@@ -207,7 +207,7 @@ public class PizzaAdminEmployeeSessionBean extends BasePizzaEnterpriseBean imple
                }
 
                // Set created timestamp
-               employee.setEmployeeCreated(new Date());
+               employee.setEmployeeEntryCreated(new Date());
 
                // Persist it
                this.getEntityManager().persist(employee);
@@ -231,7 +231,7 @@ public class PizzaAdminEmployeeSessionBean extends BasePizzaEnterpriseBean imple
                boolean isFound = false;
 
                // Check all entries
-               for (final Employable otherEmployee : this.employeeBean.allEmployees()) {
+               for (final Employable otherEmployee : this.employeeBean.fetchAllEmployees()) {
                        // Is same found?
                        if (Employees.isSameEmployeeFound(employee, otherEmployee)) {
                                // Found it
index e25dcc3215b4d74e0f8123a8569a5b36ff40b1ff..914132917107d01d410480bedd2efdd3458171d7 100644 (file)
@@ -44,7 +44,7 @@ public class PizzaEmployeeSessionBean extends BasePizzaEnterpriseBean implements
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<Employable> allEmployees () {
+       public List<Employable> fetchAllEmployees () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allEmployees(): CALLED!", this.getClass().getSimpleName())); //NOI18N
 
index e9b1d581c38a3f4fdf0e946cf9d574339dd4f9ba..ede896ce10d64f2291b52ee3580bd81815890c75 100644 (file)
@@ -131,7 +131,7 @@ public class PizzaAdminHeadquarterSessionBean extends BasePizzaEnterpriseBean im
         */
        private boolean isHeadquarterFound (final Headquarter headquarter) {
                // Get whole list
-               final List<Headquarter> headquarters = this.headquarterBean.allHeadquarters();
+               final List<Headquarter> headquarters = this.headquarterBean.fetchAllHeadquarters();
 
                // Default is not found
                boolean isFound = false;
index 5b0b4def3aad2b1e2dec3f867a4e84b42cd65410..1b6717f86b2aad264dfceb84ed4b55fd9bb505d9 100644 (file)
@@ -38,7 +38,7 @@ public class PizzaHeadquarterSessionBean extends BasePizzaEnterpriseBean impleme
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<Headquarter> allHeadquarters () {
+       public List<Headquarter> fetchAllHeadquarters () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allHeadquarters: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
index a18d41188c715a0aba0327b01e53bbaf41a7b077..07c04b82d13da9bae66d8053c78471c5e5a09473 100644 (file)
@@ -51,7 +51,7 @@ public class PizzaAdminOpeningTimesSessionBean extends BasePizzaEnterpriseBean i
                if (null == openingTime) {
                        // Throw NPE
                        throw new NullPointerException("openingTime is null"); //NOI18N
-               } else if (openingTime.getOpeningId() instanceof Long) {
+               } else if (openingTime.getOpeningTimeId() instanceof Long) {
                        // Should not happen
                        throw new IllegalArgumentException("openingTime.openingId should not be set."); //NOI18N
                } else if (openingTime.getOpeningStartDay()== null) {
@@ -69,13 +69,13 @@ public class PizzaAdminOpeningTimesSessionBean extends BasePizzaEnterpriseBean i
                }
 
                // Set created timestamp
-               openingTime.setOpeningCreated(new Date());
+               openingTime.setOpeningTimeEntryCreated(new Date());
 
                // Persist it
                this.getEntityManager().persist(openingTime);
 
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.addOpeningTimes(): openingTime.openingId={1} - EXIT!", this.getClass().getSimpleName(), openingTime.getOpeningId())); //NOI18N
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.addOpeningTimes(): openingTime.openingId={1} - EXIT!", this.getClass().getSimpleName(), openingTime.getOpeningTimeId())); //NOI18N
 
                // Return updated instance
                return openingTime;
index 859febb58d042403238bc825bb12d03728858881..34e31672c205309e76d3980c58fa0669c37d5048 100644 (file)
@@ -37,7 +37,7 @@ public class PizzaOpeningTimesSessionBean extends BasePizzaEnterpriseBean implem
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<OpeningTime> allOpeningTimes () {
+       public List<OpeningTime> fetchAllOpeningTimes () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allOpeningTimes: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
index acd45f7f6d8dfeeaf83b1999809b07b0359e4532..3edfb05149c27eba7530baa182e87a2376544c87 100644 (file)
@@ -114,7 +114,7 @@ public class PizzaAdminCountrySingletonBean extends BasePizzaEnterpriseBean impl
                boolean isAdded = false;
 
                // Try to match code/i18n key (should be both unique!)
-               for (final Country currentCountry : this.countryBean.allCountries()) {
+               for (final Country currentCountry : this.countryBean.fetchAllCountries()) {
                        // Is it matching
                        if (Objects.equals(country, currentCountry)) {
                                // Yes, then set flag and abort loop
index 87bc6fa3b1d60c9ef2b946861afe6d8ea7b8f576..38b48e32eb69686f77608fd98c5eb9c244213a7b 100644 (file)
@@ -47,7 +47,7 @@ public class PizzaCountrySingletonBean extends BasePizzaEnterpriseBean implement
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<Country> allCountries () {
+       public List<Country> fetchAllCountries () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allCountries: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
diff --git a/src/java/org/mxchange/jphone/model/phonenumbers/mobile/FinancialsAdminMobileSessionBean.java b/src/java/org/mxchange/jphone/model/phonenumbers/mobile/FinancialsAdminMobileSessionBean.java
new file mode 100644 (file)
index 0000000..5040db6
--- /dev/null
@@ -0,0 +1,139 @@
+/*
+ * 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
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jphone.model.phonenumbers.mobile;
+
+import java.text.MessageFormat;
+import java.util.Date;
+import javax.ejb.Stateless;
+import org.mxchange.jfinancials.enterprise.BaseFinancialsEnterpriseBean;
+
+/**
+ * An EJB for administrative mobile number purposes
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+@Stateless (name = "adminMobile", description = "An administrative bean handling mobile number data")
+public class FinancialsAdminMobileSessionBean extends BaseFinancialsEnterpriseBean implements AdminMobileSessionBeanRemote {
+
+       /**
+        * Serial number
+        */
+       private static final long serialVersionUID = 18_597_165_817_401_854L;
+
+       /**
+        * Default constructor
+        */
+       public FinancialsAdminMobileSessionBean () {
+               // Call super constructor
+               super();
+       }
+
+       @Override
+       public void deleteMobileData (final DialableMobileNumber mobileNumber) {
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteMobileData: mobileNumber={1} - CALLED!", this.getClass().getSimpleName(), mobileNumber));
+
+               // Is all data set
+               if (null == mobileNumber) {
+                       // Not set, throw NPE
+                       throw new NullPointerException("mobileNumber is null"); //NOI18N
+               } else if (mobileNumber.getMobileId() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("mobileNumber.phoneId is null"); //NOI18N
+               } else if (mobileNumber.getMobileId() < 1) {
+                       // Invalid number
+                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.phoneId={0} is not valid", mobileNumber.getMobileId())); //NOI18N
+               } else if (mobileNumber.getMobileProvider() == null) {
+                       // Throw NPE
+                       throw new NullPointerException("mobileNumber.cellphoneProvider is null"); //NOI18N
+               } else if (mobileNumber.getMobileProvider().getProviderId() == null) {
+                       // ... throw again
+                       throw new NullPointerException("mobileNumber.cellphoneProvider.providerId is null"); //NOI18N
+               } else if (mobileNumber.getMobileProvider().getProviderId() < 1) {
+                       // Id not valid
+                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.cellphoneProvider.providerId={0} is not valid.", mobileNumber.getMobileProvider().getProviderId())); //NOI18N
+               } else if (mobileNumber.getMobileNumber() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("mobileNumber.mobileNumber is null"); //NOI18N
+               } else if (mobileNumber.getMobileNumber() < 1) {
+                       // Throw NPE again
+                       throw new NullPointerException(MessageFormat.format("mobileNumber.mobileNumber={0} is not valid.", mobileNumber.getMobileNumber())); //NOI18N
+               }
+
+               // Get a managed instance
+               final DialableMobileNumber managedNumber = this.getEntityManager().getReference(mobileNumber.getClass(), mobileNumber.getMobileId());
+
+               // Remove it from database
+               this.getEntityManager().remove(managedNumber);
+
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteMobileData: EXIT!", this.getClass().getSimpleName()));
+       }
+
+       @Override
+       public DialableMobileNumber updateMobileData (final DialableMobileNumber mobileNumber) {
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateMobileData: mobileNumber={1} - CALLED!", this.getClass().getSimpleName(), mobileNumber));
+
+               // Is all data set
+               if (null == mobileNumber) {
+                       // Not set, throw NPE
+                       throw new NullPointerException("mobileNumber is null"); //NOI18N
+               } else if (mobileNumber.getMobileId() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("mobileNumber.phoneId is null"); //NOI18N
+               } else if (mobileNumber.getMobileId() < 1) {
+                       // Invalid number
+                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.phoneId={0} is not valid", mobileNumber.getMobileId())); //NOI18N
+               } else if (mobileNumber.getMobileProvider() == null) {
+                       // Throw NPE
+                       throw new NullPointerException("mobileNumber.cellphoneProvider is null"); //NOI18N
+               } else if (mobileNumber.getMobileProvider().getProviderId() == null) {
+                       // ... throw again
+                       throw new NullPointerException("mobileNumber.cellphoneProvider.providerId is null"); //NOI18N
+               } else if (mobileNumber.getMobileProvider().getProviderId() < 1) {
+                       // Id not valid
+                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.cellphoneProvider.providerId={0} is not valid.", mobileNumber.getMobileProvider().getProviderId())); //NOI18N
+               } else if (mobileNumber.getMobileNumber() == null) {
+                       // Throw NPE again
+                       throw new NullPointerException("mobileNumber.mobileNumber is null"); //NOI18N
+               } else if (mobileNumber.getMobileNumber() < 1) {
+                       // Throw NPE again
+                       throw new NullPointerException(MessageFormat.format("mobileNumber.mobileNumber={0} is not valid.", mobileNumber.getMobileNumber())); //NOI18N
+               }
+
+               // Get contact from it and find it
+               final DialableMobileNumber managedNumber = this.getEntityManager().find(mobileNumber.getClass(), mobileNumber.getMobileId());
+
+               // Should be found
+               assert (managedNumber instanceof DialableMobileNumber) : MessageFormat.format("Cell phone number with id {0} not found, but should be.", mobileNumber.getMobileId()); //NOI18N
+
+               // Debug message
+               this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.updateMobileData: managedNumber.phoneId={1}", this.getClass().getSimpleName(), managedNumber.getMobileId())); //NOI18N
+
+               // Set updated timestamp
+               MobileNumbers.copyMobileNumber(mobileNumber, managedNumber);
+               managedNumber.setMobileEntryUpdated(new Date());
+
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateMobileData: managedNumber={1} - EXIT!", this.getClass().getSimpleName(), managedNumber)); //NOI18N
+
+               // Return it
+               return managedNumber;
+       }
+
+}
diff --git a/src/java/org/mxchange/jphone/model/phonenumbers/mobile/FinancialsMobileSessionBean.java b/src/java/org/mxchange/jphone/model/phonenumbers/mobile/FinancialsMobileSessionBean.java
new file mode 100644 (file)
index 0000000..8e2e899
--- /dev/null
@@ -0,0 +1,65 @@
+/*
+ * 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
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.mxchange.jphone.model.phonenumbers.mobile;
+
+import java.text.MessageFormat;
+import java.util.List;
+import javax.ejb.Stateless;
+import javax.persistence.Query;
+import org.mxchange.jfinancials.enterprise.BaseFinancialsEnterpriseBean;
+
+/**
+ * A general mobile number EJB
+ * <p>
+ * @author Roland Häder<roland@mxchange.org>
+ */
+@Stateless (name = "mobile", description = "A bean handling mobile number data")
+public class FinancialsMobileSessionBean extends BaseFinancialsEnterpriseBean implements MobileSessionBeanRemote {
+
+       /**
+        * Serial number
+        */
+       private static final long serialVersionUID = 134_945_698_127_602L;
+
+       /**
+        * Default constructor
+        */
+       public FinancialsMobileSessionBean () {
+               // Call super constructor
+               super();
+       }
+
+       @SuppressWarnings ("unchecked")
+       @Override
+       public List<DialableMobileNumber> fetchAllMobileNumbers () {
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allMobileNumbers: CALLED!", this.getClass().getSimpleName())); //NOI18N
+
+               // Get query
+               final Query query = this.getEntityManager().createNamedQuery("AllMobileNumbers", MobileNumber.class); //NOI18N
+
+               // Get list from it
+               final List<DialableMobileNumber> list = query.getResultList();
+
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allMobileNumbers: list.size()={1} - EXIT!", this.getClass().getSimpleName(), list.size())); //NOI18N
+
+               // Return it
+               return list;
+       }
+
+}
index 13793d56b06d56a8a67ca75363e2ad4bdeeeee30..fbba959515d121f8d2249539ab948baec74ff57f 100644 (file)
@@ -47,7 +47,7 @@ public class PizzaMobileProviderSingletonBean extends BasePizzaEnterpriseBean im
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<MobileProvider> allMobileProviders () {
+       public List<MobileProvider> fetchAllMobileProviders () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allMobileProvider: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
index a97cef06bc9c47c31ac559671304bd7d9341dc42..c08dda4108df12efd832858aafde9f500a8b49a2 100644 (file)
@@ -23,9 +23,6 @@ import org.mxchange.jphone.model.phonenumbers.fax.DialableFaxNumber;
 import org.mxchange.jphone.model.phonenumbers.fax.FaxNumbers;
 import org.mxchange.jphone.model.phonenumbers.landline.DialableLandLineNumber;
 import org.mxchange.jphone.model.phonenumbers.landline.LandLineNumbers;
-import org.mxchange.jphone.model.phonenumbers.mobile.DialableMobileNumber;
-import org.mxchange.jphone.model.phonenumbers.mobile.MobileNumbers;
-import org.mxchange.pizzaaplication.enterprise.BasePizzaEnterpriseBean;
 
 /**
  * An EJB for administrative phone purposes
@@ -144,48 +141,6 @@ public class PizzaAdminPhoneSessionBean extends BasePizzaEnterpriseBean implemen
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteMobileData: EXIT!", this.getClass().getSimpleName()));
        }
 
-       @Override
-       public void deleteMobileData (final DialableMobileNumber mobileNumber) {
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteMobileData: mobileNumber={1} - CALLED!", this.getClass().getSimpleName(), mobileNumber));
-
-               // Is all data set
-               if (null == mobileNumber) {
-                       // Not set, throw NPE
-                       throw new NullPointerException("mobileNumber is null"); //NOI18N
-               } else if (mobileNumber.getMobileId() == null) {
-                       // Throw NPE again
-                       throw new NullPointerException("mobileNumber.phoneId is null"); //NOI18N
-               } else if (mobileNumber.getMobileId() < 1) {
-                       // Invalid number
-                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.phoneId={0} is not valid", mobileNumber.getMobileId())); //NOI18N
-               } else if (mobileNumber.getMobileProvider() == null) {
-                       // Throw NPE
-                       throw new NullPointerException("mobileNumber.cellphoneProvider is null"); //NOI18N
-               } else if (mobileNumber.getMobileProvider().getProviderId() == null) {
-                       // ... throw again
-                       throw new NullPointerException("mobileNumber.cellphoneProvider.providerId is null"); //NOI18N
-               } else if (mobileNumber.getMobileProvider().getProviderId() < 1) {
-                       // Id not valid
-                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.cellphoneProvider.providerId={0} is not valid.", mobileNumber.getMobileProvider().getProviderId())); //NOI18N
-               } else if (mobileNumber.getMobileNumber() == null) {
-                       // Throw NPE again
-                       throw new NullPointerException("mobileNumber.mobileNumber is null"); //NOI18N
-               } else if (mobileNumber.getMobileNumber() < 1) {
-                       // Throw NPE again
-                       throw new NullPointerException(MessageFormat.format("mobileNumber.mobileNumber={0} is not valid.", mobileNumber.getMobileNumber())); //NOI18N
-               }
-
-               // Get a managed instance
-               final DialableMobileNumber managedNumber = this.getEntityManager().getReference(mobileNumber.getClass(), mobileNumber.getMobileId());
-
-               // Remove it from database
-               this.getEntityManager().remove(managedNumber);
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteMobileData: EXIT!", this.getClass().getSimpleName()));
-       }
-
        @Override
        public DialableFaxNumber updateFaxData (final DialableFaxNumber faxNumber) {
                // Trace message
@@ -302,56 +257,4 @@ public class PizzaAdminPhoneSessionBean extends BasePizzaEnterpriseBean implemen
                return managedNumber;
        }
 
-       @Override
-       public DialableMobileNumber updateMobileData (final DialableMobileNumber mobileNumber) {
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateMobileData: mobileNumber={1} - CALLED!", this.getClass().getSimpleName(), mobileNumber));
-
-               // Is all data set
-               if (null == mobileNumber) {
-                       // Not set, throw NPE
-                       throw new NullPointerException("mobileNumber is null"); //NOI18N
-               } else if (mobileNumber.getMobileId() == null) {
-                       // Throw NPE again
-                       throw new NullPointerException("mobileNumber.phoneId is null"); //NOI18N
-               } else if (mobileNumber.getMobileId() < 1) {
-                       // Invalid number
-                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.phoneId={0} is not valid", mobileNumber.getMobileId())); //NOI18N
-               } else if (mobileNumber.getMobileProvider() == null) {
-                       // Throw NPE
-                       throw new NullPointerException("mobileNumber.cellphoneProvider is null"); //NOI18N
-               } else if (mobileNumber.getMobileProvider().getProviderId() == null) {
-                       // ... throw again
-                       throw new NullPointerException("mobileNumber.cellphoneProvider.providerId is null"); //NOI18N
-               } else if (mobileNumber.getMobileProvider().getProviderId() < 1) {
-                       // Id not valid
-                       throw new IllegalArgumentException(MessageFormat.format("mobileNumber.cellphoneProvider.providerId={0} is not valid.", mobileNumber.getMobileProvider().getProviderId())); //NOI18N
-               } else if (mobileNumber.getMobileNumber() == null) {
-                       // Throw NPE again
-                       throw new NullPointerException("mobileNumber.mobileNumber is null"); //NOI18N
-               } else if (mobileNumber.getMobileNumber() < 1) {
-                       // Throw NPE again
-                       throw new NullPointerException(MessageFormat.format("mobileNumber.mobileNumber={0} is not valid.", mobileNumber.getMobileNumber())); //NOI18N
-               }
-
-               // Get contact from it and find it
-               final DialableMobileNumber managedNumber = this.getEntityManager().find(mobileNumber.getClass(), mobileNumber.getMobileId());
-
-               // Should be found
-               assert (managedNumber instanceof DialableMobileNumber) : MessageFormat.format("Cell phone number with id {0} not found, but should be.", mobileNumber.getMobileId()); //NOI18N
-
-               // Debug message
-               this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.updateMobileData: managedNumber.phoneId={1}", this.getClass().getSimpleName(), managedNumber.getMobileId())); //NOI18N
-
-               // Set updated timestamp
-               MobileNumbers.copyMobileNumber(mobileNumber, managedNumber);
-               managedNumber.setMobileEntryUpdated(new Date());
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateMobileData: managedNumber={1} - EXIT!", this.getClass().getSimpleName(), managedNumber)); //NOI18N
-
-               // Return it
-               return managedNumber;
-       }
-
 }
index ad6624d312a44fb861f90f30f872d540b90a1488..84b51cb7350b9e6e5d96d296d330290647c3cd3d 100644 (file)
@@ -25,9 +25,6 @@ import org.mxchange.jphone.model.phonenumbers.fax.DialableFaxNumber;
 import org.mxchange.jphone.model.phonenumbers.fax.FaxNumber;
 import org.mxchange.jphone.model.phonenumbers.landline.DialableLandLineNumber;
 import org.mxchange.jphone.model.phonenumbers.landline.LandLineNumber;
-import org.mxchange.jphone.model.phonenumbers.mobile.DialableMobileNumber;
-import org.mxchange.jphone.model.phonenumbers.mobile.MobileNumber;
-import org.mxchange.pizzaaplication.enterprise.BasePizzaEnterpriseBean;
 
 /**
  * A general phone EJB
@@ -52,7 +49,7 @@ public class PizzaPhoneSessionBean extends BasePizzaEnterpriseBean implements Ph
 
        @SuppressWarnings ("unchecked")
        @Override
-       public List<DialableFaxNumber> allFaxNumbers () {
+       public List<DialableFaxNumber> fetchAllFaxNumbers () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allFaxNumbers: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
@@ -71,7 +68,7 @@ public class PizzaPhoneSessionBean extends BasePizzaEnterpriseBean implements Ph
 
        @SuppressWarnings ("unchecked")
        @Override
-       public List<DialableLandLineNumber> allLandLineNumbers () {
+       public List<DialableLandLineNumber> fetchAllLandLineNumbers () {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allLandLineNumbers: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
@@ -88,23 +85,4 @@ public class PizzaPhoneSessionBean extends BasePizzaEnterpriseBean implements Ph
                return list;
        }
 
-       @SuppressWarnings ("unchecked")
-       @Override
-       public List<DialableMobileNumber> allMobileNumbers () {
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allMobileNumbers: CALLED!", this.getClass().getSimpleName())); //NOI18N
-
-               // Get query
-               final Query query = this.getEntityManager().createNamedQuery("AllMobileNumbers", MobileNumber.class); //NOI18N
-
-               // Get list from it
-               final List<DialableMobileNumber> list = query.getResultList();
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allMobileNumbers: list.size()={1} - EXIT!", this.getClass().getSimpleName(), list.size())); //NOI18N
-
-               // Return it
-               return list;
-       }
-
 }
index 97cc33e405366dbef45aad3dc6852b8a9cb6a1f5..7c452d6185e225e171e6405743b99302c51ce34b 100644 (file)
@@ -19,11 +19,10 @@ package org.mxchange.jusercore.model.user;
 import java.text.MessageFormat;
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 import javax.ejb.EJB;
 import javax.ejb.EJBException;
 import javax.ejb.Stateless;
-import javax.persistence.NoResultException;
-import javax.persistence.PersistenceException;
 import javax.persistence.Query;
 import org.mxchange.jcontacts.model.contact.Contact;
 import org.mxchange.jcontacts.model.contact.Contacts;
@@ -70,45 +69,6 @@ public class PizzaUserSessionBean extends BasePizzaEnterpriseBean implements Use
                super("jms/pizzaservice-queue-factory", "jms/pizzaservice-email-queue"); //NOI18N
        }
 
-       @Override
-       @SuppressWarnings ("unchecked")
-       @Deprecated
-       public List<String> allUserNames () {
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.getUserNameList: CALLED!", this.getClass().getSimpleName())); //NOI18N
-
-               // Get query
-               final Query query = this.getEntityManager().createNamedQuery("AllUserNames", String.class); //NOI18N
-
-               // Get result list
-               final List<String> userNameList = query.getResultList();
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.getUserNameList: userNameList.size()={1} - EXIT!", this.getClass().getSimpleName(), userNameList.size())); //NOI18N
-
-               // Return it
-               return userNameList;
-       }
-
-       @Override
-       @SuppressWarnings ("unchecked")
-       public List<User> allUsers () {
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allUsers: CALLED!", this.getClass().getSimpleName())); //NOI18N
-
-               // Get named query
-               final Query query = this.getEntityManager().createNamedQuery("AllUsers", LoginUser.class); //NOI18N
-
-               // Get result
-               final List<User> users = query.getResultList();
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allUsers: users.size()={1} - EXIT!", this.getClass().getSimpleName(), users.size())); //NOI18N
-
-               // Return full list
-               return users;
-       }
-
        @Override
        public User confirmAccount (final User user, final String baseUrl) throws UserStatusConfirmedException, UserStatusLockedException {
                // Trace message
@@ -160,79 +120,25 @@ public class PizzaUserSessionBean extends BasePizzaEnterpriseBean implements Use
        }
 
        @Override
-       @Deprecated
-       public User fillUserData (final User user) throws UserNotFoundException {
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.fillUserData: user={1} - CALLED!", this.getClass().getSimpleName(), user)); //NOI18N
-
-               // user should not be null
-               if (null == user) {
-                       // Abort here
-                       throw new NullPointerException("user is null"); //NOI18N
-               } else if (user.getUserName() == null) {
-                       // Throw NPE
-                       throw new NullPointerException("user.userName is null");
-               } else if (user.getUserName().isEmpty()) {
-                       // Throw IAE
-                       throw new IllegalArgumentException("user.userName is empty");
-               } else if (!this.ifUserExists(user)) {
-                       // User does not exist
-                       throw new UserNotFoundException(user);
-               }
-
-               // Try to locate it
-               final Query query = this.getEntityManager().createNamedQuery("SearchUserByName", LoginUser.class); //NOI18N
-
-               // Set parameter
-               query.setParameter("userName", user.getUserName()); //NOI18N
-
-               // Initialize variable
-               final User foundUser;
-
-               // Try it
-               try {
-                       // Try to get single result
-                       foundUser = (User) query.getSingleResult();
-               } catch (final NoResultException ex) {
-                       // Log it
-                       this.getLoggerBeanLocal().logException(ex);
-                       return null;
-               }
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.fillUserData: foundUser={1} - EXIT!", this.getClass().getSimpleName(), foundUser)); //NOI18N
-
-               // Return prepared instance
-               return foundUser;
-       }
-
-       @Override
-       @Deprecated
-       public String generateRandomUserName () {
+       @SuppressWarnings ("unchecked")
+       public List<User> fetchAllUsers () {
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.generateRandomUserName - CALLED!", this.getClass().getSimpleName())); //NOI18N
-
-               // Get full list
-               final List<String> userList = this.allUserNames();
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allUsers: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
-               // Init variable
-               String userName = null;
+               // Get named query
+               final Query query = this.getEntityManager().createNamedQuery("AllUsers", LoginUser.class); //NOI18N
 
-               // Loop until a user name is found
-               while ((userName == null) || (userList.contains(userName))) {
-                       // Generate random name
-                       userName = Users.generateRandomUserName();
-               }
+               // Get result
+               final List<User> users = query.getResultList();
 
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.generateRandomUserName: userName={1} - EXIT!", this.getClass().getSimpleName(), userName)); //NOI18N
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allUsers: users.size()={1} - EXIT!", this.getClass().getSimpleName(), users.size())); //NOI18N
 
-               // Found one, so return it
-               return userName;
+               // Return full list
+               return users;
        }
 
        @Override
-       @Deprecated
        public boolean ifUserExists (final User user) {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.ifUserExists: user={1} - CALLED!", this.getClass().getSimpleName(), user)); //NOI18N
@@ -249,38 +155,24 @@ public class PizzaUserSessionBean extends BasePizzaEnterpriseBean implements Use
                        throw new IllegalArgumentException(MessageFormat.format("user.userId={0} is not valid", user.getUserId())); //NOI18N
                }
 
-               // Generate query
-               final Query query = this.getEntityManager().createNamedQuery("SearchUserById", LoginUser.class); //NOI18N
-
-               // Set parameter
-               query.setParameter("id", user.getUserId()); //NOI18N
-
-               // Try this
-               try {
-                       // Try to get single result
-                       final User dummy = (User) query.getSingleResult();
-
-                       // Debug message
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("ifUserExists: dummy.userId={0} found.", dummy.getUserId())); //NOI18N
-               } catch (final NoResultException ex) {
-                       // Log it
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("ifUserExists: getSingleResult() returned no result: {0}", ex)); //NOI18N
-
-                       // User name does not exist
-                       return false;
-               } catch (final PersistenceException ex) {
-                       // Something bad happened
-                       this.getLoggerBeanLocal().logWarning(MessageFormat.format("More than one user {0} found.", user, ex)); //NOI18N
-
-                       // Throw again
-                       throw ex;
+               // Default is not found
+               boolean isFound = false;
+
+               // Fetch whole list
+               for (final User currentUser : this.fetchAllUsers()) {
+                       // Is found?
+                       if (Objects.equals(user, currentUser)) {
+                               // Yes, then set flag and exit iteration
+                               isFound = true;
+                               break;
+                       }
                }
 
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.ifUserExists: Found user {1} - EXIT!", this.getClass().getSimpleName(), user)); //NOI18N
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.ifUserExists: isFound={1} - EXIT!", this.getClass().getSimpleName(), isFound)); //NOI18N
 
-               // Found it
-               return true;
+               // Return flag
+               return isFound;
        }
 
        @Override
@@ -297,29 +189,21 @@ public class PizzaUserSessionBean extends BasePizzaEnterpriseBean implements Use
                        throw new NullPointerException("userName is empty"); //NOI18N
                }
 
-               // Generate query
-               final Query query = this.getEntityManager().createNamedQuery("SearchUserByName", LoginUser.class); //NOI18N
-
-               // Set parameter
-               query.setParameter("userName", userName); //NOI18N
-
-               // Try this
-               try {
-                       // Try to get single result
-                       final User dummy = (User) query.getSingleResult();
-
-                       // Debug message
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.ifUserNameExists: dummy.userId={1} found.", this.getClass().getSimpleName(), dummy.getUserId())); //NOI18N
-               } catch (final NoResultException ex) {
-                       // Log it
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.ifUserNameExists: getSingleResult() returned no result: {1}", this.getClass().getSimpleName(), ex)); //NOI18N
-
-                       // User name does not exist
-                       return false;
+               // Default is not registered
+               boolean isRegistered = false;
+
+               // Iterate over all records
+               for (final User currentUser : this.fetchAllUsers()) {
+                       // Does the username match?
+                       if (userName.equals(currentUser.getUserName())) {
+                               // Yes, then set flag and exit iteration
+                               isRegistered = true;
+                               break;
+                       }
                }
 
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.ifUserNameExists: Found userName={1} - EXIT!", this.getClass().getSimpleName(), userName)); //NOI18N
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.ifUserNameExists: isRegistered={1} - EXIT!", this.getClass().getSimpleName(), isRegistered)); //NOI18N
 
                // Found it
                return true;
@@ -336,38 +220,24 @@ public class PizzaUserSessionBean extends BasePizzaEnterpriseBean implements Use
                        throw new NullPointerException("user is null"); //NOI18N
                }
 
-               // Generate query
-               final Query query = this.getEntityManager().createNamedQuery("SearchUserByEmailAddress", LoginUser.class); //NOI18N
-
-               // Set parameter
-               query.setParameter("emailAddress", user.getUserContact().getContactEmailAddress()); //NOI18N
-
-               // Search for it
-               try {
-                       // Try to get single result
-                       final User dummy = (User) query.getSingleResult();
-
-                       // Debug message
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.isEmailAddressRegistered: dummy.userId={1} found.", this.getClass().getSimpleName(), dummy.getUserId())); //NOI18N
-               } catch (final NoResultException ex) {
-                       // Log it
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.isEmailAddressRegistered: getSingleResult() returned no result: {1}", this.getClass().getSimpleName(), ex)); //NOI18N
-
-                       // Email address does not exist
-                       return false;
-               } catch (final PersistenceException ex) {
-                       // Something bad happened
-                       this.getLoggerBeanLocal().logWarning(MessageFormat.format("More than one email address {0} found.", user.getUserContact().getContactEmailAddress()), ex); //NOI18N
-
-                       // Throw again
-                       throw ex;
+               // Default is not registered
+               boolean isRegistered = false;
+
+               // Iterate over all records
+               for (final User currentUser : this.fetchAllUsers()) {
+                       // Does the email address match?
+                       if (user.getUserContact().getContactEmailAddress().equals(currentUser.getUserContact().getContactEmailAddress())) {
+                               // Yes, then set flag and exit iteration
+                               isRegistered = true;
+                               break;
+                       }
                }
 
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isEmailAddressRegistered: Returning true ... - EXIT!", this.getClass().getSimpleName())); //NOI18N
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isEmailAddressRegistered: isRegistered={1} - EXIT!", this.getClass().getSimpleName(), isRegistered)); //NOI18N
 
                // Found it
-               return true;
+               return isRegistered;
        }
 
        @Override
@@ -381,38 +251,14 @@ public class PizzaUserSessionBean extends BasePizzaEnterpriseBean implements Use
                        throw new NullPointerException("user is null"); //NOI18N
                }
 
-               // Generate query
-               final Query query = this.getEntityManager().createNamedQuery("SearchUserByName", LoginUser.class); //NOI18N
-
-               // Set parameter
-               query.setParameter("userName", user.getUserName()); //NOI18N
-
-               // Try this
-               try {
-                       // Try to get single result
-                       final User dummy = (User) query.getSingleResult();
-
-                       // Debug message
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.isUserNameRegistered: dummy.userId={1} found.", this.getClass().getSimpleName(), dummy.getUserId())); //NOI18N
-               } catch (final NoResultException ex) {
-                       // Log it
-                       this.getLoggerBeanLocal().logDebug(MessageFormat.format("{0}.isUserNameRegistered: getSingleResult() returned no result: {1}", this.getClass().getSimpleName(), ex)); //NOI18N
-
-                       // User name does not exist
-                       return false;
-               } catch (final PersistenceException ex) {
-                       // Something bad happened
-                       this.getLoggerBeanLocal().logWarning(MessageFormat.format("More than one email address {0} found.", user.getUserContact().getContactEmailAddress()), ex); //NOI18N
-
-                       // Throw again
-                       throw ex;
-               }
+               // Ask other method
+               final boolean isRegistered = this.ifUserNameExists(user.getUserName());
 
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isUserNameRegistered: Returning true ... - EXIT!", this.getClass().getSimpleName())); //NOI18N
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isUserNameRegistered: isRegistered={1} - EXIT!", this.getClass().getSimpleName(), isRegistered)); //NOI18N
 
-               // Found it
-               return true;
+               // Return flag
+               return isRegistered;
        }
 
        @Override
index eb8530e1e3c78ae7a55ec6ecbb3bc92089deae00..7b09b745505257aa412dd19b7faeec93e9e586f8 100644 (file)
@@ -57,25 +57,6 @@ public class PizzaUserEmailChangeSessionBean extends BasePizzaEnterpriseBean imp
                super("jms/pizzaservice-queue-factory", "jms/pizzaservice-email-queue"); //NOI18N
        }
 
-       @Override
-       @SuppressWarnings ("unchecked")
-       public List<String> allQueuedAddresses () {
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allQueuedAddresses: CALLED!", this.getClass().getSimpleName())); //NOI18N
-
-               // Get named query
-               final Query query = this.getEntityManager().createNamedQuery("AllEmailAddressChanges", String.class); //NOI18N
-
-               // Get all entries
-               final List<String> emailAddresses = query.getResultList();
-
-               // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allQueuedAddresses: emailAddresses.size()={1} - EXIT!", this.getClass().getSimpleName(), emailAddresses.size())); //NOI18N
-
-               // Return it
-               return emailAddresses;
-       }
-
        @Override
        public void enqueueEmailAddressForChange (final ChangeableEmailAddress emailChange, final String baseUrl) {
                // Trace message
@@ -94,9 +75,6 @@ public class PizzaUserEmailChangeSessionBean extends BasePizzaEnterpriseBean imp
                } else if (emailChange.getEmailChangeUser().getUserId() < 1) {
                        // Not valid id
                        throw new IllegalArgumentException(MessageFormat.format("emailChange.emailChangeUser.userId={0} is invalid.", emailChange.getEmailChangeUser().getUserId())); //NOI18N
-               } else if (!this.userBean.ifUserExists(emailChange.getEmailChangeUser())) {
-                       // User does not exist
-                       throw new EJBException(MessageFormat.format("Email change with id {0} does not exist.", emailChange.getEmailChangeId())); //NOI18N
                } else if (emailChange.getEmailAddress().trim().isEmpty()) {
                        // Email address is empty
                        throw new IllegalArgumentException("emailChange.emaiLAddress is empty."); //NOI18N
@@ -122,36 +100,22 @@ public class PizzaUserEmailChangeSessionBean extends BasePizzaEnterpriseBean imp
        }
 
        @Override
-       public boolean isEmailAddressEnqueued (final String emailAddress) {
+       @SuppressWarnings ("unchecked")
+       public List<ChangeableEmailAddress> fetchAllQueuedAddressChanges () {
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isEmailAddressEnqueued: emailAddress={1} - CALLED!", this.getClass().getSimpleName(), emailAddress)); //NOI18N
-
-               // Create query instance
-               final Query query = this.getEntityManager().createNamedQuery("SearchEmailChangeByEmail"); //NOI18N
-
-               // Add email address as parameter
-               query.setParameter("email", emailAddress); //NOI18N
-
-               // Initialize variable
-               boolean isFound = false;
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allQueuedAddresses: CALLED!", this.getClass().getSimpleName())); //NOI18N
 
-               // Try it
-               try {
-                       // Try to get single result
-                       final ChangeableEmailAddress dummy = (ChangeableEmailAddress) query.getSingleResult();
+               // Get named query
+               final Query query = this.getEntityManager().createNamedQuery("AllEmailAddressChanges", ChangeableEmailAddress.class); //NOI18N
 
-                       // Found it
-                       isFound = true;
-               } catch (final NoResultException ex) {
-                       // Log it
-                       this.getLoggerBeanLocal().logException(ex);
-               }
+               // Get all entries
+               final List<ChangeableEmailAddress> emailAddresses = query.getResultList();
 
                // Trace message
-               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isEmailAddressEnqueued: isFound={1} - EXIT!", this.getClass().getSimpleName(), isFound)); //NOI18N
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.allQueuedAddresses: emailAddresses.size()={1} - EXIT!", this.getClass().getSimpleName(), emailAddresses.size())); //NOI18N
 
                // Return it
-               return isFound;
+               return emailAddresses;
        }
 
        @Override
@@ -172,9 +136,6 @@ public class PizzaUserEmailChangeSessionBean extends BasePizzaEnterpriseBean imp
                } else if (emailAddress.getEmailAddress().trim().isEmpty()) {
                        // Email address is empty
                        throw new IllegalArgumentException("emailAddress.emaiLAddress is empty."); //NOI18N
-               } else if (!this.userBean.ifUserExists(emailAddress.getEmailChangeUser())) {
-                       // User does not exist
-                       throw new EJBException(MessageFormat.format("Email change with id {0} does not exist.", emailAddress.getEmailChangeId())); //NOI18N
                } else if (!this.isEmailAddressEnqueued(emailAddress.getEmailAddress())) {
                        // Email address is not enqueued
                        throw new EJBException(MessageFormat.format("Email address {0} is not enqueued.", emailAddress.getEmailAddress())); //NOI18N
@@ -234,4 +195,35 @@ public class PizzaUserEmailChangeSessionBean extends BasePizzaEnterpriseBean imp
                emailAddressChange.setEmailChangeHash(hash);
        }
 
+       /**
+        * Checks whether given email address is already enqueued
+        * <p>
+        * @param emailAddress Email address to check
+        * <p>
+        * @return Whether the email address has already been enqueued
+        */
+       private boolean isEmailAddressEnqueued (final String emailAddress) {
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isEmailAddressEnqueued: emailAddress={1} - CALLED!", this.getClass().getSimpleName(), emailAddress)); //NOI18N
+
+               // Default is not found
+               boolean isFound = false;
+
+               // Fetch all records
+               for (final ChangeableEmailAddress address : this.fetchAllQueuedAddressChanges()) {
+                       // Is it found?
+                       if (address.getEmailAddress().equals(emailAddress)) {
+                               // Yes, set flag, skip further iterations
+                               isFound = true;
+                               break;
+                       }
+               }
+
+               // Trace message
+               this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isEmailAddressEnqueued: isFound={1} - EXIT!", this.getClass().getSimpleName(), isFound)); //NOI18N
+
+               // Return it
+               return isFound;
+       }
+
 }
index a1141994bb1f3fbf3dfcbdd3369781692d5815e2..afc407ee753331f77292c134f314eedf4996fe0f 100644 (file)
@@ -46,7 +46,7 @@ public class PizzaUserPasswordHistorySessionBean extends BasePizzaEnterpriseBean
 
        @Override
        @SuppressWarnings ("unchecked")
-       public List<PasswordHistory> getUserPasswordHistory (final User user) {
+       public List<PasswordHistory> fetchPasswordHistoryByUser (final User user) {
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.getUserPasswordHistory(): user={1} - EXIT!", this.getClass().getSimpleName(), user)); //NOI18N