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.helper;
19 import java.io.Serializable;
20 import org.mxchange.jcontacts.contact.Contact;
21 import org.mxchange.jcustomercore.model.customer.Customer;
22 import org.mxchange.jphone.phonenumbers.fax.DialableFaxNumber;
23 import org.mxchange.jphone.phonenumbers.landline.DialableLandLineNumber;
24 import org.mxchange.jphone.phonenumbers.mobile.DialableMobileNumber;
25 import org.mxchange.jusercore.model.user.User;
28 * An interface for general bean helper
30 * @author Roland Häder<roland@mxchange.org>
32 public interface PizzaWebRequestHelperController extends Serializable {
35 * Getter for user instance
37 * @return User instance
42 * Setter for user instance
44 * @param user User instance
46 void setUser (final User user);
49 * Copies currently set user instance's data to adminUserController
51 void copyUserToController ();
54 * Returns a message key depending on if this contact is a user and/or a
55 * contact. If this contact is unused, a default key is returned.
57 * @param contact Contact instance to check
61 String getContactUsageMessageKey (final Contact contact);
64 * Getter for contact instance
66 * @return Contact instance
68 Contact getContact ();
71 * Setter for contact instance
73 * @param contact Contact instance
75 void setContact (final Contact contact);
78 * Getter for customer instance
80 * @return Customer instance
82 Customer getCustomer ();
85 * Setter for customer instance
87 * @param customer Contact instance
89 void setCustomer (final Customer customer);
92 * Copies currently set contact instance's data to adminContactController
94 void copyContactToController ();
97 * Copies currently set customer instance's data to adminCustomerController
99 void copyCustomerToController ();
102 * Copies currently set fax number's data to admin phone controller
104 void copyFaxNumberToController ();
107 * Copies currently set land-line number's data to admin phone controller
109 void copyLandLineNumberToController ();
112 * Copies currently set mobile number's data to admin phone controller
114 void copyMobileNumberToController ();
117 * Getter for dialable mobile number
119 * @return Dialable mobile number
121 DialableMobileNumber getMobileNumber ();
124 * Setter for dialable mobile number
126 * @param mobileNumber Dialable mobile number
128 void setMobileNumber (final DialableMobileNumber mobileNumber);
131 * Getter for dialable land-line number
133 * @return Dialable land-line number
135 DialableLandLineNumber getLandLineNumber ();
138 * Setter for dialable land-line number
140 * @param landLine Dialable land-line number
142 void setLandLineNumber (final DialableLandLineNumber landLine);
145 * Getter for dialable fax number
147 * @return Dialable fax number
149 DialableFaxNumber getFaxNumber ();
152 * Setter for dialable fax number
154 * @param faxNumber Dialable fax number
156 void setFaxNumber (final DialableFaxNumber faxNumber);