2 * Copyright (C) 2016, 2017 Roland Häder
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU Affero General Public License as
6 * published by the Free Software Foundation, either version 3 of the
7 * License, or (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU Affero General Public License for more details.
14 * You should have received a copy of the GNU Affero General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 package org.mxchange.pizzaapplication.beans.phone;
19 import java.text.MessageFormat;
20 import java.util.List;
21 import java.util.Objects;
22 import javax.annotation.PostConstruct;
23 import javax.enterprise.context.RequestScoped;
24 import javax.enterprise.event.Event;
25 import javax.enterprise.inject.Any;
26 import javax.faces.view.facelets.FaceletException;
27 import javax.inject.Inject;
28 import javax.inject.Named;
29 import javax.naming.Context;
30 import javax.naming.InitialContext;
31 import javax.naming.NamingException;
32 import org.mxchange.jcountry.data.Country;
33 import org.mxchange.jphone.events.fax.deleted.AdminDeletedFaxNumberEvent;
34 import org.mxchange.jphone.events.fax.deleted.AdminFaxNumberDeletedEvent;
35 import org.mxchange.jphone.events.fax.removed.AdminFaxNumberRemovedFromListEvent;
36 import org.mxchange.jphone.events.fax.removed.AdminRemoveFaxNumberFromListEvent;
37 import org.mxchange.jphone.events.fax.updated.AdminFaxNumberUpdatedEvent;
38 import org.mxchange.jphone.events.fax.updated.AdminUpdatedFaxNumberEvent;
39 import org.mxchange.jphone.events.landline.deleted.AdminDeletedLandLineNumberEvent;
40 import org.mxchange.jphone.events.landline.deleted.AdminLandLineNumberDeletedEvent;
41 import org.mxchange.jphone.events.landline.removed.AdminLandLineNumberRemovedFromListEvent;
42 import org.mxchange.jphone.events.landline.removed.AdminRemoveLandLineNumberFromListEvent;
43 import org.mxchange.jphone.events.landline.updated.AdminLandLineNumberUpdatedEvent;
44 import org.mxchange.jphone.events.landline.updated.AdminUpdatedLandLineNumberEvent;
45 import org.mxchange.jphone.events.mobile.deleted.AdminDeletedMobileNumberEvent;
46 import org.mxchange.jphone.events.mobile.deleted.AdminMobileNumberDeletedEvent;
47 import org.mxchange.jphone.events.mobile.remove.AdminMobileNumberRemovedFromListEvent;
48 import org.mxchange.jphone.events.mobile.remove.AdminRemoveMobileNumberFromListEvent;
49 import org.mxchange.jphone.events.mobile.updated.AdminMobileNumberUpdatedEvent;
50 import org.mxchange.jphone.events.mobile.updated.AdminUpdatedMobileNumberEvent;
51 import org.mxchange.jphone.phonenumbers.fax.DialableFaxNumber;
52 import org.mxchange.jphone.phonenumbers.landline.DialableLandLineNumber;
53 import org.mxchange.jphone.phonenumbers.mobile.DialableMobileNumber;
54 import org.mxchange.jphone.phonenumbers.mobileprovider.MobileProvider;
55 import org.mxchange.jphone.phonenumbers.phone.AdminPhoneSessionBeanRemote;
56 import org.mxchange.pizzaapplication.beans.BasePizzaController;
57 import org.mxchange.pizzaapplication.beans.helper.PizzaWebRequestHelperController;
60 * Administrative bean (controller) for phone numbers
62 * @author Roland Häder<roland@mxchange.org>
64 @Named ("adminPhoneController")
66 public class PizzaAdminPhoneWebRequestBean extends BasePizzaController implements PizzaAdminPhoneWebRequestController {
71 private static final short THREAD_STACK = 5;
76 private static final long serialVersionUID = 184_598_175_371_269_016L;
79 * Remote EJB for phone number (administrative)
81 private AdminPhoneSessionBeanRemote adminPhoneBean;
87 private PizzaWebRequestHelperController beanHelper;
92 private DialableFaxNumber faxNumber;
96 * Event being fired when an administrator has deleted fax number
100 private Event<AdminDeletedFaxNumberEvent> faxNumberDeletedEvent;
103 * Event being fired when an administrator has updated fax number
107 private Event<AdminUpdatedFaxNumberEvent> faxNumberUpdatedEvent;
111 private DialableLandLineNumber landLineNumber;
114 * Event being fired when an administrator has deleted land-line number
118 private Event<AdminDeletedLandLineNumberEvent> landLineNumberDeletedEvent;
121 * Event being fired when an administrator has updated fax number
125 private Event<AdminUpdatedLandLineNumberEvent> landLineNumberUpdatedEvent;
129 private DialableMobileNumber mobileNumber;
132 * Event being fired when an administrator has deleted mobile number
136 private Event<AdminDeletedMobileNumberEvent> mobileNumberDeletedEvent;
139 * Event being fired when an administrator has updated land-line number
143 private Event<AdminUpdatedMobileNumberEvent> mobileNumberUpdatedEvent;
148 private MobileProvider mobileProvider;
151 * Area code (city dial prefix)
153 private Integer phoneAreaCode;
156 * Generic hone controller
159 private PizzaPhoneWebApplicationController phoneController;
162 * Country (for dial prefix)
164 private Country phoneCountry;
169 private Long phoneNumber;
172 * Event being fired when a list of all unsed fax numbers is being created.
176 private Event<AdminRemoveFaxNumberFromListEvent> removeLinkedFaxNumbersEvent;
179 * Event being fired when a list of all unsed land-line numbers is being
184 private Event<AdminRemoveLandLineNumberFromListEvent> removeLinkedLandLineNumbersEvent;
187 * Event being fired when a list of all unsed mobile numbers is being
192 private Event<AdminRemoveMobileNumberFromListEvent> removeLinkedMobileNumbersEvent;
195 * Default constructor
197 public PizzaAdminPhoneWebRequestBean () {
198 // Call super constructor
201 // String caller = MessageFormat.format("{0}.{1}", Thread.currentThread().getStackTrace()[3].getClassName(), Thread.currentThread().getStackTrace()[3].getMethodName());
202 // System.out.println(MessageFormat.format("{0}: Constructed, caller: {1}", this.getClass().getSimpleName(), caller));
206 public List<DialableFaxNumber> allNonLinkedFaxNumbers () {
207 // Get list of all mobile numbers
208 List<DialableFaxNumber> list = this.phoneController.allFaxNumbers();
210 // Visit all controllers to reduce the list
211 this.removeLinkedFaxNumbersEvent.fire(new AdminFaxNumberRemovedFromListEvent(list));
218 public List<DialableLandLineNumber> allNonLinkedLandLineNumbers () {
219 // Get list of all mobile numbers
220 List<DialableLandLineNumber> list = this.phoneController.allLandLineNumbers();
222 // Visit all controllers to reduce the list
223 this.removeLinkedLandLineNumbersEvent.fire(new AdminLandLineNumberRemovedFromListEvent(list));
230 public List<DialableMobileNumber> allNonLinkedMobileNumbers () {
231 // Get list of all mobile numbers
232 List<DialableMobileNumber> list = this.phoneController.allMobileNumbers();
234 // Visit all controllers to reduce the list
235 this.removeLinkedMobileNumbersEvent.fire(new AdminMobileNumberRemovedFromListEvent(list));
242 public String deleteFaxData (final DialableFaxNumber faxNumber) {
244 if (faxNumber == null) {
245 // Not set, throw NPE
246 throw new NullPointerException("faxNumber is null"); //NOI18N
247 } else if (faxNumber.getPhoneId() == null) {
249 throw new NullPointerException("faxNumber.phoneId is null"); //NOI18N
250 } else if (faxNumber.getPhoneId() < 1) {
252 throw new IllegalArgumentException(MessageFormat.format("faxNumber.phoneId={0} is not valid", faxNumber.getPhoneId())); //NOI18N
253 } else if (faxNumber.getPhoneCountry() == null) {
255 throw new NullPointerException("faxNumber.phoneCountry is null"); //NOI18N
256 } else if (faxNumber.getPhoneCountry().getCountryId() == null) {
258 throw new NullPointerException("faxNumber.phoneCountry.countryId is null"); //NOI18N
259 } else if (faxNumber.getPhoneCountry().getCountryId() < 1) {
261 throw new NullPointerException(MessageFormat.format("faxNumber.phoneCountry.countryId={0} is not valid", faxNumber.getPhoneCountry().getCountryId())); //NOI18N
262 } else if (faxNumber.getPhoneAreaCode() == null) {
264 throw new NullPointerException("faxNumber.phoneAreaCode is null"); //NOI18N
265 } else if (faxNumber.getPhoneAreaCode() < 1) {
267 throw new IllegalArgumentException(MessageFormat.format("faxNumber.phoneAreaCode={0} is not valid.", faxNumber.getPhoneAreaCode())); //NOI18N
268 } else if (faxNumber.getPhoneNumber() == null) {
270 throw new NullPointerException("faxNumber.phoneNumber is null"); //NOI18N
271 } else if (faxNumber.getPhoneNumber() < 1) {
273 throw new NullPointerException(MessageFormat.format("faxNumber.phoneNumber={0} is not valid.", faxNumber.getPhoneNumber())); //NOI18N
277 this.adminPhoneBean.deleteFaxData(faxNumber);
280 this.faxNumberDeletedEvent.fire(new AdminFaxNumberDeletedEvent(faxNumber));
282 // All fine, redirect
283 return "admin_list_fax"; //NOI18N
287 public String deleteLandLineData (final DialableLandLineNumber landLineNumber) {
289 if (landLineNumber == null) {
290 // Not set, throw NPE
291 throw new NullPointerException("landLineNumber is null"); //NOI18N
292 } else if (landLineNumber.getPhoneId() == null) {
294 throw new NullPointerException("landLineNumber.phoneId is null"); //NOI18N
295 } else if (landLineNumber.getPhoneId() < 1) {
297 throw new IllegalArgumentException(MessageFormat.format("landLineNumber.phoneId={0} is not valid", landLineNumber.getPhoneId())); //NOI18N
298 } else if (landLineNumber.getPhoneCountry() == null) {
300 throw new NullPointerException("landLineNumber.phoneCountry is null"); //NOI18N
301 } else if (landLineNumber.getPhoneCountry().getCountryId() == null) {
303 throw new NullPointerException("landLineNumber.phoneCountry.countryId is null"); //NOI18N
304 } else if (landLineNumber.getPhoneCountry().getCountryId() < 1) {
306 throw new NullPointerException(MessageFormat.format("landLineNumber.phoneCountry.countryId={0} is not valid", landLineNumber.getPhoneCountry().getCountryId())); //NOI18N
307 } else if (landLineNumber.getPhoneAreaCode() == null) {
309 throw new NullPointerException("landLineNumber.phoneAreaCode is null"); //NOI18N
310 } else if (landLineNumber.getPhoneAreaCode() < 1) {
312 throw new IllegalArgumentException(MessageFormat.format("landLineNumber.phoneAreaCode={0} is not valid.", landLineNumber.getPhoneAreaCode())); //NOI18N
313 } else if (landLineNumber.getPhoneNumber() == null) {
315 throw new NullPointerException("landLineNumber.phoneNumber is null"); //NOI18N
316 } else if (landLineNumber.getPhoneNumber() < 1) {
318 throw new NullPointerException(MessageFormat.format("landLineNumber.phoneNumber={0} is not valid.", landLineNumber.getPhoneNumber())); //NOI18N
322 this.adminPhoneBean.deleteLandLineData(landLineNumber);
325 this.landLineNumberDeletedEvent.fire(new AdminLandLineNumberDeletedEvent(landLineNumber));
327 // All fine, redirect
328 return "admin_list_landline"; //NOI18N
332 public String deleteMobileData (final DialableMobileNumber mobileNumber) {
334 if (mobileNumber == null) {
335 // Not set, throw NPE
336 throw new NullPointerException("mobileNumber is null"); //NOI18N
337 } else if (mobileNumber.getPhoneId() == null) {
339 throw new NullPointerException("mobileNumber.phoneId is null"); //NOI18N
340 } else if (mobileNumber.getPhoneId() < 1) {
342 throw new IllegalArgumentException(MessageFormat.format("mobileNumber.phoneId={0} is not valid", mobileNumber.getPhoneId())); //NOI18N
343 } else if (mobileNumber.getMobileProvider() == null) {
345 throw new NullPointerException("mobileNumber.mobileProvider is null"); //NOI18N
346 } else if (mobileNumber.getMobileProvider().getProviderId() == null) {
348 throw new NullPointerException("mobileNumber.mobileProvider.providerId is null"); //NOI18N
349 } else if (mobileNumber.getMobileProvider().getProviderId() < 1) {
351 throw new IllegalArgumentException(MessageFormat.format("mobileNumber.mobileProvider.providerId={0} is not valid.", mobileNumber.getMobileProvider().getProviderId())); //NOI18N
352 } else if (mobileNumber.getPhoneNumber() == null) {
354 throw new NullPointerException("mobileNumber.phoneNumber is null"); //NOI18N
355 } else if (mobileNumber.getPhoneNumber() < 1) {
357 throw new NullPointerException(MessageFormat.format("mobileNumber.phoneNumber={0} is not valid.", mobileNumber.getPhoneNumber())); //NOI18N
361 this.adminPhoneBean.deleteMobileData(mobileNumber);
364 this.mobileNumberDeletedEvent.fire(new AdminMobileNumberDeletedEvent(mobileNumber));
366 // All fine, redirect
367 return "admin_list_mobile"; //NOI18N
371 public String editFaxData (final DialableFaxNumber faxNumber) {
373 if (faxNumber == null) {
374 // Not set, throw NPE
375 throw new NullPointerException("faxNumber is null"); //NOI18N
376 } else if (faxNumber.getPhoneId() == null) {
378 throw new NullPointerException("faxNumber.phoneId is null"); //NOI18N
379 } else if (faxNumber.getPhoneId() < 1) {
381 throw new IllegalArgumentException(MessageFormat.format("faxNumber.phoneId={0} is not valid", faxNumber.getPhoneId())); //NOI18N
382 } else if (faxNumber.getPhoneCountry() == null) {
384 throw new NullPointerException("faxNumber.phoneCountry is null"); //NOI18N
385 } else if (faxNumber.getPhoneCountry().getCountryId() == null) {
387 throw new NullPointerException("faxNumber.phoneCountry.countryId is null"); //NOI18N
388 } else if (faxNumber.getPhoneCountry().getCountryId() < 1) {
390 throw new NullPointerException(MessageFormat.format("faxNumber.phoneCountry.countryId={0} is not valid", faxNumber.getPhoneCountry().getCountryId())); //NOI18N
391 } else if (faxNumber.getPhoneAreaCode() == null) {
393 throw new NullPointerException("faxNumber.phoneAreaCode is null"); //NOI18N
394 } else if (faxNumber.getPhoneAreaCode() < 1) {
396 throw new IllegalArgumentException(MessageFormat.format("faxNumber.phoneAreaCode={0} is not valid.", faxNumber.getPhoneAreaCode())); //NOI18N
397 } else if (faxNumber.getPhoneNumber() == null) {
399 throw new NullPointerException("faxNumber.phoneNumber is null"); //NOI18N
400 } else if (faxNumber.getPhoneNumber() < 1) {
402 throw new NullPointerException(MessageFormat.format("faxNumber.phoneNumber={0} is not valid.", faxNumber.getPhoneNumber())); //NOI18N
405 // Is the mobile provider and number the same?
406 if ((Objects.equals(this.getPhoneCountry(), faxNumber.getPhoneCountry())) && (Objects.equals(this.getPhoneAreaCode(), faxNumber.getPhoneAreaCode())) && (Objects.equals(this.getPhoneNumber(), faxNumber.getPhoneNumber()))) {
408 this.showFacesMessage("form_edit_fax:faxNumber", "ERROR_ADMIN_NO_CHANGE_ENTERED"); //NOI18N
410 // No difference in both together, no need to edit
415 faxNumber.setPhoneCountry(this.getPhoneCountry());
416 faxNumber.setPhoneAreaCode(this.getPhoneAreaCode());
417 faxNumber.setPhoneNumber(this.getPhoneNumber());
420 DialableFaxNumber updatedNumber = this.adminPhoneBean.updateFaxData(faxNumber);
423 this.faxNumberUpdatedEvent.fire(new AdminFaxNumberUpdatedEvent(updatedNumber));
425 // All fine, redirect
426 return "admin_show_fax"; //NOI18N
430 public String editLandLineData (final DialableLandLineNumber landLineNumber) {
432 if (landLineNumber == null) {
433 // Not set, throw NPE
434 throw new NullPointerException("landLineNumber is null"); //NOI18N
435 } else if (landLineNumber.getPhoneId() == null) {
437 throw new NullPointerException("landLineNumber.phoneId is null"); //NOI18N
438 } else if (landLineNumber.getPhoneId() < 1) {
440 throw new IllegalArgumentException(MessageFormat.format("landLineNumber.phoneId={0} is not valid", landLineNumber.getPhoneId())); //NOI18N
441 } else if (landLineNumber.getPhoneCountry() == null) {
443 throw new NullPointerException("landLineNumber.phoneCountry is null"); //NOI18N
444 } else if (landLineNumber.getPhoneCountry().getCountryId() == null) {
446 throw new NullPointerException("landLineNumber.phoneCountry.countryId is null"); //NOI18N
447 } else if (landLineNumber.getPhoneCountry().getCountryId() < 1) {
449 throw new NullPointerException(MessageFormat.format("landLineNumber.phoneCountry.countryId={0} is not valid", landLineNumber.getPhoneCountry().getCountryId())); //NOI18N
450 } else if (landLineNumber.getPhoneAreaCode() == null) {
452 throw new NullPointerException("landLineNumber.phoneAreaCode is null"); //NOI18N
453 } else if (landLineNumber.getPhoneAreaCode() < 1) {
455 throw new IllegalArgumentException(MessageFormat.format("landLineNumber.phoneAreaCode={0} is not valid.", landLineNumber.getPhoneAreaCode())); //NOI18N
456 } else if (landLineNumber.getPhoneNumber() == null) {
458 throw new NullPointerException("landLineNumber.phoneNumber is null"); //NOI18N
459 } else if (landLineNumber.getPhoneNumber() < 1) {
461 throw new NullPointerException(MessageFormat.format("landLineNumber.phoneNumber={0} is not valid.", landLineNumber.getPhoneNumber())); //NOI18N
464 // Is the mobile provider and number the same?
465 if ((Objects.equals(this.getPhoneCountry(), landLineNumber.getPhoneCountry())) && (Objects.equals(this.getPhoneAreaCode(), landLineNumber.getPhoneAreaCode())) && (Objects.equals(this.getPhoneNumber(), landLineNumber.getPhoneNumber()))) {
467 this.showFacesMessage("form_edit_landline:landLineNumber", "ERROR_ADMIN_NO_CHANGE_ENTERED"); //NOI18N
469 // No difference in both together, no need to edit
474 landLineNumber.setPhoneCountry(this.getPhoneCountry());
475 landLineNumber.setPhoneAreaCode(this.getPhoneAreaCode());
476 landLineNumber.setPhoneNumber(this.getPhoneNumber());
479 DialableLandLineNumber updatedNumber = this.adminPhoneBean.updateLandLineData(landLineNumber);
482 this.landLineNumberUpdatedEvent.fire(new AdminLandLineNumberUpdatedEvent(updatedNumber));
484 // All fine, redirect
485 return "admin_show_landline"; //NOI18N
489 public String editMobileData (final DialableMobileNumber mobileNumber) {
491 if (mobileNumber == null) {
492 // Not set, throw NPE
493 throw new NullPointerException("mobileNumber is null"); //NOI18N
494 } else if (mobileNumber.getPhoneId() == null) {
496 throw new NullPointerException("mobileNumber.phoneId is null"); //NOI18N
497 } else if (mobileNumber.getPhoneId() < 1) {
499 throw new IllegalArgumentException(MessageFormat.format("mobileNumber.phoneId={0} is not valid", mobileNumber.getPhoneId())); //NOI18N
500 } else if (mobileNumber.getMobileProvider() == null) {
502 throw new NullPointerException("mobileNumber.mobileProvider is null"); //NOI18N
503 } else if (mobileNumber.getMobileProvider().getProviderId() == null) {
505 throw new NullPointerException("mobileNumber.mobileProvider.providerId is null"); //NOI18N
506 } else if (mobileNumber.getMobileProvider().getProviderId() < 1) {
508 throw new IllegalArgumentException(MessageFormat.format("mobileNumber.mobileProvider.providerId={0} is not valid.", mobileNumber.getMobileProvider().getProviderId())); //NOI18N
509 } else if (mobileNumber.getPhoneNumber() == null) {
511 throw new NullPointerException("mobileNumber.phoneNumber is null"); //NOI18N
512 } else if (mobileNumber.getPhoneNumber() < 1) {
514 throw new NullPointerException(MessageFormat.format("mobileNumber.phoneNumber={0} is not valid.", mobileNumber.getPhoneNumber())); //NOI18N
515 } else if (this.getMobileProvider() == null) {
517 this.showFacesMessage("form_edit_mobile:mobileProvider", "ERROR_ADMIN_NO_MOBILE_PROVIDER_SELECTED"); //NOI18N
519 } else if (this.getMobileProvider().getProviderId() == null) {
520 // Throw NPE again ...
521 throw new NullPointerException("this.mobileProvider.providerId is null"); //NOI18N
522 } else if (this.getMobileProvider().getProviderId() < 0) {
524 throw new IllegalArgumentException(MessageFormat.format("this.mobileProvider.providerId={0} is not valid.", this.getMobileProvider().getProviderId())); //NOI18N
525 } else if (this.getPhoneNumber() == null) {
527 this.showFacesMessage("form_edit_mobile:mobileNumber", "ERROR_ADMIN_EMPTY_MOBILE_NUMBER"); //NOI18N
531 // Is the mobile provider and number the same?
532 if ((Objects.equals(this.getMobileProvider(), mobileNumber.getMobileProvider())) && (Objects.equals(this.getPhoneNumber(), mobileNumber.getPhoneNumber()))) {
534 this.showFacesMessage("form_edit_mobile:mobileNumber", "ERROR_ADMIN_NO_CHANGE_ENTERED"); //NOI18N
536 // No difference in both together, no need to edit
541 mobileNumber.setMobileProvider(this.getMobileProvider());
542 mobileNumber.setPhoneNumber(this.getPhoneNumber());
545 DialableMobileNumber updatedNumber = this.adminPhoneBean.updateMobileData(mobileNumber);
548 this.mobileNumberUpdatedEvent.fire(new AdminMobileNumberUpdatedEvent(updatedNumber));
550 // All fine, redirect
551 return "admin_show_mobile"; //NOI18N
555 public DialableFaxNumber getFaxNumber () {
556 // String caller = MessageFormat.format("{0}.{1}", Thread.currentThread().getStackTrace()[THREAD_STACK].getClassName(), Thread.currentThread().getStackTrace()[THREAD_STACK].getMethodName());
557 // System.out.println(MessageFormat.format("{0}: Returning this.faxNumber={1}, caller: {2}", this.getClass().getSimpleName(), this.faxNumber, caller));
558 return this.faxNumber;
562 public void setFaxNumber (final DialableFaxNumber faxNumber) {
563 // String caller = MessageFormat.format("{0}.{1}", Thread.currentThread().getStackTrace()[THREAD_STACK].getClassName(), Thread.currentThread().getStackTrace()[THREAD_STACK].getMethodName());
564 // System.out.println(MessageFormat.format("{0}: Settin faxNumber={1}, previous: this.faxNumber={2}, caller: {3}", this.getClass().getSimpleName(), faxNumber, this.faxNumber, caller));
565 this.faxNumber = faxNumber;
569 public DialableLandLineNumber getLandLineNumber () {
570 return this.landLineNumber;
574 public void setLandLineNumber (final DialableLandLineNumber landLineNumber) {
575 this.landLineNumber = landLineNumber;
579 public DialableMobileNumber getMobileNumber () {
580 return this.mobileNumber;
584 public void setMobileNumber (final DialableMobileNumber mobileNumber) {
585 this.mobileNumber = mobileNumber;
589 public MobileProvider getMobileProvider () {
590 return this.mobileProvider;
594 public void setMobileProvider (final MobileProvider mobileProvider) {
595 this.mobileProvider = mobileProvider;
599 public Integer getPhoneAreaCode () {
600 return this.phoneAreaCode;
604 public void setPhoneAreaCode (final Integer phoneAreaCode) {
605 this.phoneAreaCode = phoneAreaCode;
609 public Country getPhoneCountry () {
610 return this.phoneCountry;
614 public void setPhoneCountry (final Country phoneCountry) {
615 this.phoneCountry = phoneCountry;
619 public Long getPhoneNumber () {
620 return this.phoneNumber;
624 public void setPhoneNumber (final Long phoneNumber) {
625 this.phoneNumber = phoneNumber;
629 * Post-construction method
632 public void init () {
635 // Get initial context
636 Context context = new InitialContext();
638 // Try to lookup the beans
639 this.adminPhoneBean = (AdminPhoneSessionBeanRemote) context.lookup("java:global/pizzaservice-ejb/adminPhone!org.mxchange.jphone.phonenumbers.phone.AdminPhoneSessionBeanRemote"); //NOI18N
640 } catch (final NamingException e) {
642 throw new FaceletException(e);