]> git.mxchange.org Git - jjobs-war.git/commitdiff
Continued a bit: (please cherry-pick)
authorRoland Häder <roland@mxchange.org>
Mon, 15 Aug 2016 15:58:42 +0000 (17:58 +0200)
committerRoland Haeder <roland@mxchange.org>
Sat, 20 Aug 2016 13:35:50 +0000 (15:35 +0200)
- implemented removeCellphoneNumberFromListEvent()
- renamed event method to make it more clear

Signed-off-by: Roland Häder <roland@mxchange.org>
src/java/org/mxchange/jjobs/beans/contact/JobsContactWebSessionBean.java
src/java/org/mxchange/jjobs/beans/contact/JobsContactWebSessionController.java

index 99a64e0177cceb2df38dc5501841196c1d01168c..657e980b9cd0019140c9a8ce0e34c6b359ed1bb0 100644 (file)
@@ -45,6 +45,7 @@ import org.mxchange.jcountry.data.Country;
 import org.mxchange.jjobs.beans.BaseJobsController;
 import org.mxchange.jjobs.beans.login.JobsUserLoginWebSessionController;
 import org.mxchange.jjobs.beans.user.JobsUserWebSessionController;
+import org.mxchange.jphone.events.cellphone.remove.AdminRemoveCellphoneNumberFromListEvent;
 import org.mxchange.jphone.phonenumbers.cellphone.CellphoneNumber;
 import org.mxchange.jphone.phonenumbers.cellphone.DialableCellphoneNumber;
 import org.mxchange.jphone.phonenumbers.fax.DialableFaxNumber;
@@ -409,7 +410,7 @@ public class JobsContactWebSessionBean extends BaseJobsController implements Job
        }
 
        @Override
-       public void afterUserConfirmedAccount (@Observes final UserConfirmedAccountEvent event) {
+       public void afterUserConfirmedAccountEvent (@Observes final UserConfirmedAccountEvent event) {
                // event should not be null
                if (null == event) {
                        // Throw NPE
@@ -963,6 +964,30 @@ public class JobsContactWebSessionBean extends BaseJobsController implements Job
                return localContact;
        }
 
+       @Override
+       public void removeCellphoneNumberFromListEvent (@Observes final AdminRemoveCellphoneNumberFromListEvent event) {
+               // event should not be null
+               if (null == event) {
+                       // Throw NPE
+                       throw new NullPointerException("event is null"); //NOI18N
+               } else if (event.getCellphoneList()== null) {
+                       // Throw NPE again
+                       throw new NullPointerException("event.cellphoneList is null"); //NOI18N
+               } else if (event.getCellphoneList().isEmpty()) {
+                       // List is empty, no need to check
+                       return;
+               }
+
+               // Check all entries
+               for (final Contact contact : this.contactList) {
+                       // Is the cell phone instance set and in list?
+                       if ((contact.getContactCellphoneNumber() instanceof DialableCellphoneNumber) && (event.getCellphoneList().contains(contact.getContactCellphoneNumber()))) {
+                               // Found it, so remvoe it from list
+                               event.getCellphoneList().remove(contact.getContactCellphoneNumber());
+                       }
+               }
+       }
+
        @Override
        public List<Contact> selectableContacts () {
                return Collections.unmodifiableList(this.selectableContacts);
index 681929de5ba2c62d298e9f8e15b8888f7d661fb6..248696a6244f743774358dc8d5567c8e4bed0e87 100644 (file)
@@ -27,6 +27,7 @@ import org.mxchange.jcontacts.events.contact.deleted.AdminDeletedContactEvent;
 import org.mxchange.jcontacts.events.contact.update.AdminUpdatedContactEvent;
 import org.mxchange.jcontacts.exceptions.ContactNotFoundException;
 import org.mxchange.jcountry.data.Country;
+import org.mxchange.jphone.events.cellphone.remove.AdminRemoveCellphoneNumberFromListEvent;
 import org.mxchange.jphone.phonenumbers.mobileprovider.MobileProvider;
 import org.mxchange.jusercore.events.confirmation.UserConfirmedAccountEvent;
 import org.mxchange.jusercore.events.login.UserLoggedInEvent;
@@ -68,7 +69,14 @@ public interface JobsContactWebSessionController extends Serializable {
         * <p>
         * @param event Event being fired
         */
-       void afterUserConfirmedAccount (final UserConfirmedAccountEvent event);
+       void afterUserConfirmedAccountEvent (final UserConfirmedAccountEvent event);
+
+       /**
+        * Event observer when a list with unused cell phone numers is being created
+        * <p>
+        * @param event Event being fired
+        */
+       void removeCellphoneNumberFromListEvent(final AdminRemoveCellphoneNumberFromListEvent event);
 
        /**
         * Updates all data from bean in given contact instance