X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2Fjava%2Forg%2Fmxchange%2Fpizzaapplication%2Fbeans%2Fcontact%2FPizzaAdminContactWebRequestBean.java;h=f8ce3f5a4dda8358849db401d2091f32e64396ac;hb=33f2d7b5075cb337ba33ad938b7ed7a92f933a10;hp=982cf38d84d75dcb8cdad8eedd0cdf9e74cb4fce;hpb=02dfd940f545e04ec7890c232eb28b73441176a6;p=pizzaservice-war.git diff --git a/src/java/org/mxchange/pizzaapplication/beans/contact/PizzaAdminContactWebRequestBean.java b/src/java/org/mxchange/pizzaapplication/beans/contact/PizzaAdminContactWebRequestBean.java index 982cf38d..f8ce3f5a 100644 --- a/src/java/org/mxchange/pizzaapplication/beans/contact/PizzaAdminContactWebRequestBean.java +++ b/src/java/org/mxchange/pizzaapplication/beans/contact/PizzaAdminContactWebRequestBean.java @@ -33,9 +33,9 @@ import javax.naming.NamingException; import org.mxchange.jcontacts.contact.AdminContactSessionBeanRemote; import org.mxchange.jcontacts.contact.Contact; import org.mxchange.jcontacts.contact.ContactSessionBeanRemote; +import org.mxchange.jcontacts.contact.ContactUtils; import org.mxchange.jcontacts.contact.UserContact; -import org.mxchange.jcontacts.contact.gender.Gender; -import org.mxchange.jcontacts.contact.utils.ContactUtils; +import org.mxchange.jcontacts.contact.title.PersonalTitle; import org.mxchange.jcontacts.events.contact.add.AdminAddedContactEvent; import org.mxchange.jcontacts.events.contact.add.ObservableAdminAddedContactEvent; import org.mxchange.jcontacts.events.contact.update.AdminUpdatedContactEvent; @@ -67,6 +67,11 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme */ private static final long serialVersionUID = 542_145_347_916L; + /** + * Academic academicTitle + */ + private String academicTitle; + /** * An event fired when the administrator has added a new contact */ @@ -119,7 +124,7 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme /** * Country instance */ - private Country country; + private Country contactCountry; /** * Email address @@ -156,11 +161,6 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme */ private String firstName; - /** - * Gender instance - */ - private Gender gender; - /** * House number */ @@ -182,7 +182,7 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme private boolean isLandLineUnlinked; /** - * Whether a cellphone entry has been unlinked + * Whether a cmobile entry has been unlinked */ private boolean isMobileNumberUnlinked; @@ -222,14 +222,14 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme private MobileProvider mobileProvider; /** - * Street + * PersonalTitle instance */ - private String street; + private PersonalTitle personalTitle; /** - * Title + * Street */ - private String title; + private String street; /** * An event fired when the administrator has updated contact data @@ -251,12 +251,17 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme super(); } - @Override + /** + * Adds contact data to database and redirects on success. If the contact is + * already found, a proper exception is thrown. + *

+ * @return Redirect outcome + */ public String addContact () { // Are all minimum fields set? - if (this.getGender() == null) { + if (this.getPersonalTitle() == null) { // Throw NPE - throw new NullPointerException("gender is null"); //NOI18N + throw new NullPointerException("personalTitle is null"); //NOI18N } else if (this.getFirstName() == null) { // Throw NPE throw new NullPointerException("firstName is null"); //NOI18N @@ -321,15 +326,15 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme // Set all fields: contact this.setContactId(contact.getContactId()); - this.setTitle(contact.getContactTitle()); + this.setAcademicTitle(contact.getContactTitle()); this.setBirthday(contact.getContactBirthday()); this.setCity(contact.getContactCity()); this.setComment(contact.getContactComment()); - this.setCountry(contact.getContactCountry()); + this.setContactCountry(contact.getContactCountry()); this.setEmailAddress(contact.getContactEmailAddress()); this.setFamilyName(contact.getContactFamilyName()); this.setFirstName(contact.getContactFirstName()); - this.setGender(contact.getContactGender()); + this.setPersonalTitle(contact.getContactPersonalTitle()); this.setHouseNumber(contact.getContactHouseNumber()); this.setHouseNumberExtension(contact.getContactHouseNumberExtension()); this.setStreet(contact.getContactStreet()); @@ -337,7 +342,7 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme // Is the cell phone set? if (contact.getContactMobileNumber() instanceof DialableMobileNumber) { - // ... cellphone data + // ... cmobile data this.setMobileId(contact.getContactMobileNumber().getPhoneId()); this.setMobileProvider(contact.getContactMobileNumber().getMobileProvider()); this.setMobileNumber(contact.getContactMobileNumber().getPhoneNumber()); @@ -368,9 +373,9 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme @Override public Contact createContactInstance () { // Are all minimum fields set? - if (this.getGender() == null) { + if (this.getPersonalTitle() == null) { // Throw NPE - throw new NullPointerException("gender is null"); //NOI18N + throw new NullPointerException("personalTitle is null"); //NOI18N } else if (this.getFirstName() == null) { // Throw NPE throw new NullPointerException("firstName is null"); //NOI18N @@ -391,15 +396,16 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme DialableFaxNumber fax = new FaxNumber(this.getFaxCountry(), this.getFaxAreaCode(), this.getFaxNumber()); // Create new instance - Contact contact = new UserContact(this.getGender(), this.getFirstName(), this.getFamilyName()); + Contact contact = new UserContact(this.getPersonalTitle(), this.getFirstName(), this.getFamilyName()); // Add all others + contact.setContactTitle(this.getAcademicTitle()); contact.setContactBirthday(this.getBirthday()); contact.setContactStreet(this.getStreet()); contact.setContactHouseNumber(this.getHouseNumber()); contact.setContactZipCode(this.getZipCode()); contact.setContactCity(this.getCity()); - contact.setContactCountry(this.getCountry()); + contact.setContactCountry(this.getContactCountry()); contact.setContactEmailAddress(this.getEmailAddress()); contact.setContactBirthday(this.getBirthday()); contact.setContactComment(this.getComment()); @@ -454,13 +460,13 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme // Is the number set? if (mobile.getPhoneNumber() == null) { // Is null - throw new NullPointerException("cellphone.phoneNumber is null"); //NOI18N + throw new NullPointerException("cmobile.phoneNumber is null"); //NOI18N } else if (mobile.getPhoneNumber() < 1) { // Abort here - throw new IllegalArgumentException("cellphone.phoneNumber is zero or below."); //NOI18N + throw new IllegalArgumentException("cmobile.phoneNumber is zero or below."); //NOI18N } - // Set cellphone number + // Set cmobile number contact.setContactMobileNumber(mobile); } @@ -468,7 +474,11 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme return contact; } - @Override + /** + * Edits currently loaded contact's data in database. + *

+ * @return Redirect outcome + */ public String editContactData () { // Get contact instance Contact contact = this.beanHelper.getContact(); @@ -501,7 +511,13 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme return "admin_list_contact"; //NOI18N } - @Override + /** + * Returns a text representation of given mobile number or null if not set. + *

+ * @param mobileNumber Mobile number + *

+ * @return Text representation or null + */ public String generateMobileNumber (final DialableMobileNumber mobileNumber) { // Is it null? if (null == mobileNumber) { @@ -521,7 +537,14 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme return number; } - @Override + /** + * Returns a text representation of given land-line or fax number or null if + * not set. + *

+ * @param phoneNumber Land-line or fax number + *

+ * @return Text representation or null + */ public String generatePhoneNumber (final DialableNumber phoneNumber) { // Is it null? if (null == phoneNumber) { @@ -541,44 +564,94 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme return number; } - @Override + /** + * Getter for academic title + *

+ * @return Academic title + */ + public String getAcademicTitle () { + return this.academicTitle; + } + + /** + * Setter for academic title + *

+ * @param academicTitle Academic title + */ + public void setAcademicTitle (final String academicTitle) { + this.academicTitle = academicTitle; + } + + /** + * Getter for birth day + *

+ * @return Birth day + */ @SuppressWarnings ("ReturnOfDateField") public Date getBirthday () { return this.birthday; } - @Override + /** + * Setter for birth day + *

+ * @param birthday Birth day + */ @SuppressWarnings ("AssignmentToDateFieldFromParameter") public void setBirthday (final Date birthday) { this.birthday = birthday; } - @Override + /** + * Getter for city name + *

+ * @return City name + */ public String getCity () { return this.city; } - @Override + /** + * Setter for city name + *

+ * @param city City name + */ public void setCity (final String city) { this.city = city; } - @Override + /** + * Getter for comments + *

+ * @return Comments + */ public String getComment () { return this.comment; } - @Override + /** + * Setter for comment + *

+ * @param comment Comments + */ public void setComment (final String comment) { this.comment = comment; } - @Override + /** + * Getter for contact id + *

+ * @return Contact id + */ public Long getContactId () { return this.contactId; } - @Override + /** + * Setter for contact id + *

+ * @param contactId Contact id + */ public void setContactId (final Long contactId) { this.contactId = contactId; } @@ -594,212 +667,363 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme throw new UnsupportedOperationException("Setting controller type is not supported."); //NOI18N } - @Override - public Country getCountry () { - return this.country; + /** + * Getter for contactCountry instance + *

+ * @return Country instance + */ + public Country getContactCountry () { + return this.contactCountry; } - @Override - public void setCountry (final Country country) { - this.country = country; + /** + * Setter for contactCountry instance + *

+ * @param contactCountry Country instance + */ + public void setContactCountry (final Country contactCountry) { + this.contactCountry = contactCountry; } - @Override + /** + * Getter for email address + *

+ * @return Email address + */ public String getEmailAddress () { return this.emailAddress; } - @Override + /** + * Setter for email address + *

+ * @param emailAddress Email address + */ public void setEmailAddress (final String emailAddress) { this.emailAddress = emailAddress; } - @Override + /** + * Family name + *

+ * @return the familyName + */ public String getFamilyName () { return this.familyName; } - @Override + /** + * Family name + *

+ * @param familyName the familyName to set + */ public void setFamilyName (final String familyName) { this.familyName = familyName; } - @Override + /** + * Getter for fax number's area code + *

+ * @return Fax number's area code + */ public Integer getFaxAreaCode () { return this.faxAreaCode; } - @Override + /** + * Setter for fax number's area code + *

+ * @param faxAreaCode Fax number's area code + */ public void setFaxAreaCode (final Integer faxAreaCode) { this.faxAreaCode = faxAreaCode; } - @Override + /** + * Getter for fax's country instance + *

+ * @return Fax' country instance + */ public Country getFaxCountry () { return this.faxCountry; } - @Override + /** + * Setter for fax's country instance + *

+ * @param faxCountry Fax' country instance + */ public void setFaxCountry (final Country faxCountry) { this.faxCountry = faxCountry; } - @Override + /** + * Getter for fax id + *

+ * @return Fax id + */ public Long getFaxId () { return this.faxId; } - @Override + /** + * Setter for fax id + *

+ * @param faxId Fax id + */ public void setFaxId (final Long faxId) { this.faxId = faxId; } - @Override + /** + * Getter for fax number + *

+ * @return Fax number + */ public Long getFaxNumber () { return this.faxNumber; } - @Override + /** + * Setter for fax number + *

+ * @param faxNumber Fax number + */ public void setFaxNumber (final Long faxNumber) { this.faxNumber = faxNumber; } - @Override + /** + * Getter for first name + *

+ * @return First name + */ public String getFirstName () { return this.firstName; } - @Override + /** + * Setter for first name + *

+ * @param firstName First name + */ public void setFirstName (final String firstName) { this.firstName = firstName; } - @Override - public Gender getGender () { - return this.gender; - } - - @Override - public void setGender (final Gender gender) { - this.gender = gender; - } - - @Override + /** + * Getter for house number + *

+ * @return House number + */ public Short getHouseNumber () { return this.houseNumber; } - @Override + /** + * Setter for house number + *

+ * @param houseNumber House number + */ public void setHouseNumber (final Short houseNumber) { this.houseNumber = houseNumber; } - @Override + /** + * Getter for house number extension. Example: 123a, 'a' is the extension + * and 123 is the house number. + *

+ * @return House number extension + */ public String getHouseNumberExtension () { return this.houseNumberExtension; } - @Override + /** + * Setter for house number extension + *

+ * @param houseNumberExtension House number extension + */ public void setHouseNumberExtension (final String houseNumberExtension) { this.houseNumberExtension = houseNumberExtension; } - @Override + /** + * Getter for land-line number's area code + *

+ * @return Land-line number's area code + */ public Integer getLandLineAreaCode () { return this.landLineAreaCode; } - @Override + /** + * Setter for land-line number's area code + *

+ * @param landLineAreaCode Land-line number's area code + */ public void setLandLineAreaCode (final Integer landLineAreaCode) { this.landLineAreaCode = landLineAreaCode; } - @Override + /** + * Getter for land-line number's country instance + *

+ * @return Land-line number's country instance + */ public Country getLandLineCountry () { return this.landLineCountry; } - @Override + /** + * Setter for land-line number's country instance + *

+ * @param landLineCountry Land-line number's country instance + */ public void setLandLineCountry (final Country landLineCountry) { this.landLineCountry = landLineCountry; } - @Override + /** + * Getter for land-line id + *

+ * @return Land-line id + */ public Long getLandLineId () { return this.landLineId; } - @Override + /** + * Setter for land-line id + *

+ * @param landLineId Land-line id + */ public void setLandLineId (final Long landLineId) { this.landLineId = landLineId; } - @Override + /** + * Getter for land-line number + *

+ * @return Land-line number + */ public Long getLandLineNumber () { return this.landLineNumber; } - @Override + /** + * Setter for land-line number + *

+ * @param landLineNumber Land-line number + */ public void setLandLineNumber (final Long landLineNumber) { this.landLineNumber = landLineNumber; } - @Override + /** + * Getter for mobile id + *

+ * @return Mobile id + */ public Long getMobileId () { return this.mobileId; } - @Override + /** + * Setter for mobile id + *

+ * @param mobileId Mobile id + */ public void setMobileId (final Long mobileId) { this.mobileId = mobileId; } - @Override + /** + * Getter for mobile number + *

+ * @return Mobile number + */ public Long getMobileNumber () { return this.mobileNumber; } - @Override - public void setMobileNumber (Long mobileNumber) { + /** + * Setter for mobile number + *

+ * @param mobileNumber Mobile number + */ + public void setMobileNumber (final Long mobileNumber) { this.mobileNumber = mobileNumber; } - @Override + /** + * Getter for mobile number's carrier + *

+ * @return Mobile number's carrier + */ public MobileProvider getMobileProvider () { return this.mobileProvider; } - @Override + /** + * Setter for mobile number's carrier prefix + *

+ * @param mobileProvider Mobile number's carrier prefix + */ public void setMobileProvider (final MobileProvider mobileProvider) { this.mobileProvider = mobileProvider; } - @Override - public String getStreet () { - return this.street; + /** + * Getter for personal title + *

+ * @return Personal title + */ + public PersonalTitle getPersonalTitle () { + return this.personalTitle; } - @Override - public void setStreet (final String street) { - this.street = street; + /** + * Setter for personal title + *

+ * @param personalTitle Personal title + */ + public void setPersonalTitle (final PersonalTitle personalTitle) { + this.personalTitle = personalTitle; } - @Override - public String getTitle () { - return this.title; + /** + * Getter for street name + *

+ * @return Street name + */ + public String getStreet () { + return this.street; } - @Override - public void setTitle (final String title) { - this.title = title; + /** + * Setter for street name + *

+ * @param street Street name + */ + public void setStreet (final String street) { + this.street = street; } - @Override + /** + * Getter for ZIP code + *

+ * @return ZIP code + */ public Integer getZipCode () { return this.zipCode; } - @Override + /** + * Setter for ZIP code + *

+ * @param zipCode ZIP code + */ public void setZipCode (final Integer zipCode) { this.zipCode = zipCode; } @@ -826,9 +1050,10 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme } @Override - public boolean isGenderRequired () { + @Deprecated + public boolean isPersonalTitleRequired () { // Get context parameter - String contextParameter = FacesContext.getCurrentInstance().getExternalContext().getInitParameter("is_admin_gender_enabled"); //NOI18N + String contextParameter = FacesContext.getCurrentInstance().getExternalContext().getInitParameter("is_admin_personal_title_enabled"); //NOI18N // Is it set? boolean isRequired = ((contextParameter instanceof String) && (contextParameter.toLowerCase().equals("true"))); //NOI18N @@ -837,13 +1062,39 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme return isRequired; } + @Override + public void validateContactData () { + if (this.getPersonalTitle() == null) { + // Throw NPE again + throw new NullPointerException("contactController.gender is null"); //NOI18N + } else if (this.getFirstName() == null) { + // ... and again + throw new NullPointerException("contactController.firstName is null"); //NOI18N + } else if (this.getFirstName().isEmpty()) { + // ... and again + throw new IllegalArgumentException("contactController.firstName is empty"); //NOI18N + } else if (this.getFamilyName() == null) { + // ... and again + throw new NullPointerException("contactController.familyName is null"); //NOI18N + } else if (this.getFamilyName().isEmpty()) { + // ... and again + throw new IllegalArgumentException("contactController.familyName is empty"); //NOI18N + } else if (this.getEmailAddress() == null) { + // ... and again + throw new NullPointerException("contactController.emailAddress is null"); //NOI18N + } else if (this.getEmailAddress().isEmpty()) { + // ... and again + throw new IllegalArgumentException("contactController.emailAddress is empty"); //NOI18N + } + } + /** * Clears this bean */ private void clear () { // Clear all data // - personal data - this.setTitle(null); + this.setAcademicTitle(null); this.setFirstName(null); this.setFamilyName(null); this.setStreet(null); @@ -851,7 +1102,7 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme this.setHouseNumberExtension(null); this.setZipCode(null); this.setCity(null); - this.setCountry(null); + this.setContactCountry(null); // - contact data this.setEmailAddress(null); @@ -919,8 +1170,8 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme } // Update all fields - contact.setContactGender(this.getGender()); - contact.setContactTitle(this.getTitle()); + contact.setContactPersonalTitle(this.getPersonalTitle()); + contact.setContactTitle(this.getAcademicTitle()); contact.setContactFirstName(this.getFirstName()); contact.setContactFamilyName(this.getFamilyName()); contact.setContactStreet(this.getStreet()); @@ -928,9 +1179,9 @@ public class PizzaAdminContactWebRequestBean extends BasePizzaController impleme contact.setContactHouseNumberExtension(this.getHouseNumberExtension()); contact.setContactZipCode(this.getZipCode()); contact.setContactCity(this.getCity()); - contact.setContactCountry(this.getCountry()); + contact.setContactCountry(this.getContactCountry()); - // Update contact's cellphone number + // Update contact's cmobile number this.isMobileNumberUnlinked = ContactUtils.updateMobileNumber(contact, this.getMobileProvider(), this.getMobileNumber()); // Update contact's land-line number