X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2Fjava%2Forg%2Fmxchange%2Fjjobs%2Fbeans%2Fcontact%2FJobsContactWebSessionBean.java;h=034afc6a307a5f3dc7f95dc29c9bf1c98068a755;hb=3b81f1c6b92dd99194b9383d550ff3b64b395475;hp=8233eb18933178caf44a019ed910f8aca8ae3552;hpb=f2e7a9d18e3fb283175a52bdeb107cc0efd28ef1;p=jjobs-war.git diff --git a/src/java/org/mxchange/jjobs/beans/contact/JobsContactWebSessionBean.java b/src/java/org/mxchange/jjobs/beans/contact/JobsContactWebSessionBean.java index 8233eb18..034afc6a 100644 --- a/src/java/org/mxchange/jjobs/beans/contact/JobsContactWebSessionBean.java +++ b/src/java/org/mxchange/jjobs/beans/contact/JobsContactWebSessionBean.java @@ -219,9 +219,27 @@ public class JobsContactWebSessionBean implements JobsContactWebSessionControlle } @Override - public void addEmailAddress (final String contactEmailAddress) { - // Add it - this.emailAddressList.add(contactEmailAddress); + public void afterAdminAddedContact (@Observes final AdminAddedContactEvent event) { + // The event must be valid + if (null == event) { + // Throw NPE + throw new NullPointerException("event is null"); //NOI18N + } else if (event.getAddedContact() == null) { + // Throw again ... + throw new NullPointerException("event.addedContact is null"); //NOI18N + } else if (event.getAddedContact().getContactId() == null) { + // ... and again + throw new NullPointerException("event.addedContact.customerId is null"); //NOI18N + } else if (event.getAddedContact().getContactId() < 1) { + // Not valid + throw new IllegalArgumentException(MessageFormat.format("event.addedContact.customerId={0} is not valid", event.getAddedContact().getContactId())); //NOI18N //NOI18N + } + + // Clear this bean + this.clear(); + + // Call other method + this.contactList.add(event.getAddedContact()); } @Override @@ -365,6 +383,10 @@ public class JobsContactWebSessionBean implements JobsContactWebSessionControlle @Override @SuppressWarnings ("ReturnOfCollectionOrArrayField") public List allContacts () { + // Debug message + /* NOISY-DEBUG: */ System.out.println(MessageFormat.format("ContactController.allContacts: contactList.size()={0} - EXIT!", this.contactList.size())); + + // Return un-modified list return this.contactList; } @@ -462,11 +484,7 @@ public class JobsContactWebSessionBean implements JobsContactWebSessionControlle // Trace message //* NOISY-DEBUG: */ System.out.println(MessageFormat.format("{0}.createContactInstance: contact={1} - EXIT!", this.getClass().getSimpleName(), contact)); - // Created timestamp and ownContact - contact.setContactOwnContact(Boolean.TRUE); - // Trace message - //* NOISY-DEBUG: */ System.out.println(MessageFormat.format("createContactInstance: localContact={0} - EXIT!", localContact)); // Return it return localContact; } @@ -807,21 +825,21 @@ public class JobsContactWebSessionBean implements JobsContactWebSessionControlle } @Override - public void updateContactDataFromController (final Contact userContact) { + public void updateContactDataFromController (final Contact contact) { // Is the instance valid? - if (null == userContact) { + if (null == contact) { // Throw NPE - throw new NullPointerException("userContact is null"); //NOI18N - } else if (userContact.getContactId() == null) { + throw new NullPointerException("contact is null"); //NOI18N + } else if (contact.getContactId() == null) { // Throw NPE - throw new NullPointerException("userContact.contactId is null"); //NOI18N - } else if (userContact.getContactId() < 1) { + throw new NullPointerException("contact.contactId is null"); //NOI18N + } else if (contact.getContactId() < 1) { // Not valid id number - throw new IllegalArgumentException(MessageFormat.format("userContact.contactId={0} is not valid.", userContact.getContactId())); //NOI18N + throw new IllegalArgumentException(MessageFormat.format("contact.contactId={0} is not valid.", contact.getContactId())); //NOI18N } // Set all - this.copyContact(userContact); + this.copyContact(contact); } /** @@ -873,6 +891,18 @@ public class JobsContactWebSessionBean implements JobsContactWebSessionControlle * @param contact Contact instance */ private void copyContact (final Contact contact) { + // Is the instance valid? + if (null == contact) { + // Throw NPE + throw new NullPointerException("contact is null"); //NOI18N + } else if (contact.getContactId() == null) { + // Throw NPE + throw new NullPointerException("contact.contactId is null"); //NOI18N + } else if (contact.getContactId() < 1) { + // Not valid id number + throw new IllegalArgumentException(MessageFormat.format("contact.contactId={0} is not valid.", contact.getContactId())); //NOI18N + } + // Copy all fields: // - base data this.setGender(contact.getContactGender()); @@ -883,6 +913,9 @@ public class JobsContactWebSessionBean implements JobsContactWebSessionControlle this.setZipCode(contact.getContactZipCode()); this.setCity(contact.getContactCity()); this.setCountry(contact.getContactCountry()); + this.setEmailAddress(contact.getContactEmailAddress()); + this.setBirthday(contact.getContactBirthday()); + this.setComment(contact.getContactComment()); // Get cellphone, phone and fax instance DialableCellphoneNumber cellphone = contact.getContactCellphoneNumber(); @@ -895,20 +928,45 @@ public class JobsContactWebSessionBean implements JobsContactWebSessionControlle this.setPhoneAreaCode(phone.getPhoneAreaCode()); this.setPhoneNumber(phone.getPhoneNumber()); } + if ((cellphone instanceof DialableCellphoneNumber) && (cellphone.getCellphoneProvider() instanceof MobileProvider)) { this.setCellphoneCarrier(cellphone.getCellphoneProvider()); this.setCellphoneNumber(cellphone.getPhoneNumber()); } + if ((fax instanceof DialableFaxNumber) && (fax.getPhoneAreaCode() > 0)) { this.setFaxCountry(fax.getPhoneCountry()); this.setFaxAreaCode(fax.getPhoneAreaCode()); this.setFaxNumber(fax.getPhoneNumber()); } - this.setEmailAddress(contact.getContactEmailAddress()); + } - // -- other data - this.setBirthday(contact.getContactBirthday()); - this.setComment(contact.getContactComment()); + /** + * Removes given contact from all lists + *

+ * @param contact Contact instance to remove + */ + private void removeContact (final Contact contact) { + // Is the instance valid? + if (null == contact) { + // Throw NPE + throw new NullPointerException("contact is null"); //NOI18N + } else if (contact.getContactId() == null) { + // Throw NPE + throw new NullPointerException("contact.contactId is null"); //NOI18N + } else if (contact.getContactId() < 1) { + // Not valid id number + throw new IllegalArgumentException(MessageFormat.format("contact.contactId={0} is not valid.", contact.getContactId())); //NOI18N + } + + // Remove from general list + if (!this.contactList.remove(contact)) { + // Did not remove contact + throw new IllegalStateException(MessageFormat.format("contact {0} was not removed.", contact.getContactId())); //NOI18N + } + + // Remove from other lists + this.emailAddressList.remove(contact.getContactEmailAddress()); } }