]> git.mxchange.org Git - jphone-core.git/blob - src/org/mxchange/jphone/events/mobile/created/CreatedMobileNumberEvent.java
Updated copyright year
[jphone-core.git] / src / org / mxchange / jphone / events / mobile / created / CreatedMobileNumberEvent.java
1 /*
2  * Copyright (C) 2017 - 2024 Free Software Foundation
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  *
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 General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
16  */
17 package org.mxchange.jphone.events.mobile.created;
18
19 import java.text.MessageFormat;
20 import org.mxchange.jphone.model.phonenumbers.mobile.DialableMobileNumber;
21
22 /**
23  * An event being fired when a mobile number instance has been successfully
24  * created..
25  * <p>
26  * @author Roland Häder<roland@mxchange.org>
27  */
28 public class CreatedMobileNumberEvent implements ObservableCreatedMobileNumberEvent {
29
30         /**
31          * Serial number
32          */
33         private static final long serialVersionUID = 50_498_269_827_583L;
34
35         /**
36          * Mobile number
37          */
38         private DialableMobileNumber mobileNumber;
39
40         /**
41          * Constructor with fax number instance
42          * <p>
43          * @param mobileNumber Mobile number instance
44          */
45         public CreatedMobileNumberEvent (final DialableMobileNumber mobileNumber) {
46                 // Check parameter
47                 if (null == mobileNumber) {
48                         // Throw NPE
49                         throw new NullPointerException("Parameter 'mobileNumber' is null"); //NOI18M
50                 } else if (mobileNumber.getMobileId() == null) {
51                         // Throw it again
52                         throw new NullPointerException("mobileNumber.mobileId is null"); //NOI18M
53                 } else if (mobileNumber.getMobileId() < 1) {
54                         // Throw IAE
55                         throw new IllegalArgumentException(MessageFormat.format("mobileNumber.mobileId={0} is invalid", mobileNumber.getMobileId())); //NOI18M
56                 } else if (mobileNumber.getMobileNumber() == null) {
57                         // Throw it again
58                         throw new NullPointerException("mobileNumber.mobileNumber is null"); //NOI18M
59                 } else if (mobileNumber.getMobileNumber() < 1) {
60                         // Throw IAE
61                         throw new IllegalArgumentException(MessageFormat.format("mobileNumber.mobileNumber={0} is invalid", mobileNumber.getMobileNumber())); //NOI18M
62                 } else if (mobileNumber.getMobileProvider() == null) {
63                         // Throw NPE again
64                         throw new NullPointerException("mobileNumber.mobileProvider is null"); //NOI18M
65                 } else if (mobileNumber.getMobileProvider().getProviderId() == null) {
66                         // Throw it again
67                         throw new NullPointerException("mobileNumber.mobileProvider.providerId is null"); //NOI18M
68                 } else if (mobileNumber.getMobileProvider().getProviderId() < 1) {
69                         // Throw it again
70                         throw new IllegalArgumentException(MessageFormat.format("mobileNumber.mobileProvider.providerId={0} is invalid", mobileNumber.getMobileProvider().getProviderId())); //NOI18M
71                 }
72
73                 // Set it here
74                 this.mobileNumber = mobileNumber;
75         }
76
77         @Override
78         public DialableMobileNumber getMobileNumber () {
79                 return this.mobileNumber;
80         }
81
82         @Override
83         public void setMobileNumber (final DialableMobileNumber mobileNumber) {
84                 this.mobileNumber = mobileNumber;
85         }
86
87 }