+ @Override
+ public String editFaxData (final DialableFaxNumber faxNumber) {
+ // Log message
+ System.out.println(MessageFormat.format("{0}.deleteFaxData: faxNumber={1} - CALLED!", this.getClass().getSimpleName(), faxNumber)); //NOI18N
+
+ // Is all data set
+ if (faxNumber == null) {
+ // Not set, throw NPE
+ throw new NullPointerException("faxNumber is null"); //NOI18N
+ } else if (faxNumber.getPhoneId() == null) {
+ // Throw NPE again
+ throw new NullPointerException("faxNumber.phoneId is null"); //NOI18N
+ } else if (faxNumber.getPhoneId() < 1) {
+ // Invalid number
+ throw new IllegalArgumentException(MessageFormat.format("faxNumber.phoneId={0} is not valid", faxNumber.getPhoneId())); //NOI18N
+ } else if (faxNumber.getPhoneCountry() == null) {
+ // Throw NPE
+ throw new NullPointerException("faxNumber.phoneCountry is null"); //NOI18N
+ } else if (faxNumber.getPhoneCountry().getCountryId() == null) {
+ // Throw NPE
+ throw new NullPointerException("faxNumber.phoneCountry.countryId is null"); //NOI18N
+ } else if (faxNumber.getPhoneCountry().getCountryId() < 1) {
+ // Throw NPE
+ throw new NullPointerException(MessageFormat.format("faxNumber.phoneCountry.countryId={0} is not valid", faxNumber.getPhoneCountry().getCountryId())); //NOI18N
+ } else if (faxNumber.getPhoneAreaCode() == null) {
+ // ... throw again
+ throw new NullPointerException("faxNumber.phoneAreaCode is null"); //NOI18N
+ } else if (faxNumber.getPhoneAreaCode() < 1) {
+ // Id not valid
+ throw new IllegalArgumentException(MessageFormat.format("faxNumber.phoneAreaCode={0} is not valid.", faxNumber.getPhoneAreaCode())); //NOI18N
+ } else if (faxNumber.getPhoneNumber() == null) {
+ // Throw NPE again
+ throw new NullPointerException("faxNumber.phoneNumber is null"); //NOI18N
+ } else if (faxNumber.getPhoneNumber() < 1) {
+ // Throw NPE again
+ throw new NullPointerException(MessageFormat.format("faxNumber.phoneNumber={0} is not valid.", faxNumber.getPhoneNumber())); //NOI18N
+ }
+
+ // Is the mobile provider and number the same?
+ if ((Objects.equals(this.getPhoneCountry(), faxNumber.getPhoneCountry())) && (Objects.equals(this.getPhoneAreaCode(), faxNumber.getPhoneAreaCode())) && (Objects.equals(this.getPhoneNumber(), faxNumber.getPhoneNumber()))) {
+ // Log message
+ System.out.println(MessageFormat.format("{0}.editFaxData: No difference - EXIT!", this.getClass().getSimpleName())); //NOI18N
+
+ // Show message
+ this.showFacesMessage("form_edit_fax:faxNumber", "ERROR_ADMIN_NO_CHANGE_ENTERED"); //NOI18N
+
+ // No difference in both together, no need to edit
+ return ""; //NOI18N
+ }
+
+ // Set all data
+ faxNumber.setPhoneCountry(this.getPhoneCountry());
+ faxNumber.setPhoneAreaCode(this.getPhoneAreaCode());
+ faxNumber.setPhoneNumber(this.getPhoneNumber());
+
+ // Send to bean
+ DialableFaxNumber updatedNumber = this.adminPhoneBean.updateFaxData(faxNumber);
+
+ // Fire event
+ this.faxNumberUpdatedEvent.fire(new AdminFaxNumberUpdatedEvent(updatedNumber));
+
+ // All fine, redirect
+ return "admin_show_fax"; //NOI18N
+ }
+
+ @Override
+ public String editLandLineData (final DialableLandLineNumber landLineNumber) {
+ // Log message
+ System.out.println(MessageFormat.format("{0}.deleteLandLineData: landLineNumber={1} - CALLED!", this.getClass().getSimpleName(), landLineNumber)); //NOI18N
+
+ // Is all data set
+ if (landLineNumber == null) {
+ // Not set, throw NPE
+ throw new NullPointerException("landLineNumber is null"); //NOI18N
+ } else if (landLineNumber.getPhoneId() == null) {
+ // Throw NPE again
+ throw new NullPointerException("landLineNumber.phoneId is null"); //NOI18N
+ } else if (landLineNumber.getPhoneId() < 1) {
+ // Invalid number
+ throw new IllegalArgumentException(MessageFormat.format("landLineNumber.phoneId={0} is not valid", landLineNumber.getPhoneId())); //NOI18N
+ } else if (landLineNumber.getPhoneCountry() == null) {
+ // Throw NPE
+ throw new NullPointerException("landLineNumber.phoneCountry is null"); //NOI18N
+ } else if (landLineNumber.getPhoneCountry().getCountryId() == null) {
+ // Throw NPE
+ throw new NullPointerException("landLineNumber.phoneCountry.countryId is null"); //NOI18N
+ } else if (landLineNumber.getPhoneCountry().getCountryId() < 1) {
+ // Throw NPE
+ throw new NullPointerException(MessageFormat.format("landLineNumber.phoneCountry.countryId={0} is not valid", landLineNumber.getPhoneCountry().getCountryId())); //NOI18N
+ } else if (landLineNumber.getPhoneAreaCode() == null) {
+ // ... throw again
+ throw new NullPointerException("landLineNumber.phoneAreaCode is null"); //NOI18N
+ } else if (landLineNumber.getPhoneAreaCode() < 1) {
+ // Id not valid
+ throw new IllegalArgumentException(MessageFormat.format("landLineNumber.phoneAreaCode={0} is not valid.", landLineNumber.getPhoneAreaCode())); //NOI18N
+ } else if (landLineNumber.getPhoneNumber() == null) {
+ // Throw NPE again
+ throw new NullPointerException("landLineNumber.phoneNumber is null"); //NOI18N
+ } else if (landLineNumber.getPhoneNumber() < 1) {
+ // Throw NPE again
+ throw new NullPointerException(MessageFormat.format("landLineNumber.phoneNumber={0} is not valid.", landLineNumber.getPhoneNumber())); //NOI18N
+ }
+
+ // Is the mobile provider and number the same?
+ if ((Objects.equals(this.getPhoneCountry(), landLineNumber.getPhoneCountry())) && (Objects.equals(this.getPhoneAreaCode(), landLineNumber.getPhoneAreaCode())) && (Objects.equals(this.getPhoneNumber(), landLineNumber.getPhoneNumber()))) {
+ // Log message
+ System.out.println(MessageFormat.format("{0}.editLandLineData: No difference - EXIT!", this.getClass().getSimpleName())); //NOI18N
+
+ // Show message
+ this.showFacesMessage("form_edit_landline:landLineNumber", "ERROR_ADMIN_NO_CHANGE_ENTERED"); //NOI18N
+
+ // No difference in both together, no need to edit
+ return ""; //NOI18N
+ }
+
+ // Set all data
+ landLineNumber.setPhoneCountry(this.getPhoneCountry());
+ landLineNumber.setPhoneAreaCode(this.getPhoneAreaCode());
+ landLineNumber.setPhoneNumber(this.getPhoneNumber());
+
+ // Send to bean
+ DialableLandLineNumber updatedNumber = this.adminPhoneBean.updateLandLineData(landLineNumber);
+
+ // Fire event
+ this.landLineNumberUpdatedEvent.fire(new AdminLandLineNumberUpdatedEvent(updatedNumber));
+
+ // All fine, redirect
+ return "admin_show_landline"; //NOI18N
+ }
+