]> git.mxchange.org Git - jcontacts-business-core.git/blob - src/org/mxchange/jcontactsbusiness/model/branchoffice/BranchOffice.java
Continued:
[jcontacts-business-core.git] / src / org / mxchange / jcontactsbusiness / model / branchoffice / BranchOffice.java
1 /*
2  * Copyright (C) 2016, 2017 Roland Häder
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.jcontactsbusiness.model.branchoffice;
18
19 import java.io.Serializable;
20 import java.util.Calendar;
21 import org.mxchange.jcontactsbusiness.model.basicdata.BusinessBasicData;
22 import org.mxchange.jcontactsbusiness.model.employee.Employee;
23 import org.mxchange.jcountry.data.Country;
24 import org.mxchange.jphone.phonenumbers.fax.DialableFaxNumber;
25 import org.mxchange.jphone.phonenumbers.landline.DialableLandLineNumber;
26 import org.mxchange.jusercore.model.user.User;
27
28 /**
29  * A POJI for branch offices
30  * <p>
31  * @author Roland Häder<roland@mxchange.org>
32  */
33 public interface BranchOffice extends Serializable {
34
35         /**
36          * Getter for branch office's city name
37          * <p>
38          * @return Branch office's city name
39          */
40         String getBranchCity ();
41
42         /**
43          * Setter for branch office's city name
44          * <p>
45          * @param branchCity Branch office's city name
46          */
47         void setBranchCity (final String branchCity);
48
49         /**
50          * Getter for branch office's email address
51          * <p>
52          * @return Branch office's email address
53          */
54         String getBranchEmailAddress ();
55
56         /**
57          * Setter for branch office's email address
58          * <p>
59          * @param branchEmailAddress Branch office's email address
60          */
61         void setBranchEmailAddress (final String branchEmailAddress);
62
63         /**
64          * Getter for branch office's fax number
65          * <p>
66          * @return Branch office's fax number
67          */
68         DialableFaxNumber getBranchFaxNumber ();
69
70         /**
71          * Setter for branch office's fax number
72          * <p>
73          * @param branchFaxNumber Branch office's fax number
74          */
75         void setBranchFaxNumber (final DialableFaxNumber branchFaxNumber);
76
77         /**
78          * Getter for branch office's house number
79          * <p>
80          * @return Branch office's house number
81          */
82         Short getBranchHouseNumber ();
83
84         /**
85          * Setter for branch office's house number
86          * <p>
87          * @param branchHouseNumber Branch office's house number
88          */
89         void setBranchHouseNumber (final Short branchHouseNumber);
90
91         /**
92          * Getter for branch office's phone number
93          * <p>
94          * @return Branch office's phone number
95          */
96         DialableLandLineNumber getBranchLandLineNumber ();
97
98         /**
99          * Setter for branch office's phone number
100          * <p>
101          * @param branchPhoneNumber Branch office's phone number
102          */
103         void setBranchLandLineNumber (final DialableLandLineNumber branchPhoneNumber);
104
105         /**
106          * Getter for branch office's store
107          * <p>
108          * @return Branch office's store
109          */
110         Short getBranchStore ();
111
112         /**
113          * Setter for branch office's store
114          * <p>
115          * @param branchStore Branch office's store
116          */
117         void setBranchStore (final Short branchStore);
118
119         /**
120          * Getter for branch office's street name
121          * <p>
122          * @return Branch office's street name
123          */
124         String getBranchStreet ();
125
126         /**
127          * Setter for branch office's street name
128          * <p>
129          * @param branchStreet Branch office's street name
130          */
131         void setBranchStreet (final String branchStreet);
132
133         /**
134          * Getter for branch office's suite number
135          * <p>
136          * @return Branch office's suite number
137          */
138         Short getBranchSuiteNumber ();
139
140         /**
141          * Setter for branch office's suite number
142          * <p>
143          * @param branchSuiteNumber Branch office's suite number
144          */
145         void setBranchSuiteNumber (final Short branchSuiteNumber);
146
147         /**
148          * Getter for branch office's ZIP code
149          * <p>
150          * @return Branch office's ZIP code
151          */
152         Integer getBranchZipCode ();
153
154         /**
155          * Setter for branch office's ZIP code
156          * <p>
157          * @param branchZipCode Branch office's ZIP code
158          */
159         void setBranchZipCode (final Integer branchZipCode);
160
161         /**
162          * Getter for branch office's id number
163          * <p>
164          * @return Branch office's id number
165          */
166         Long getBranchId ();
167
168         /**
169          * Setter for branch office's id number
170          * <p>
171          * @param branchId Branch office's id number
172          */
173         void setBranchId (final Long branchId);
174
175         /**
176          * Getter for branch office's country
177          * <p>
178          * @return Branch office's country
179          */
180         Country getBranchCountry ();
181
182         /**
183          * Setter for branch office's country
184          * <p>
185          * @param branchCountryCode Branch office's country
186          */
187         void setBranchCountry (final Country branchCountryCode);
188
189         /**
190          * Getter for branch office's company
191          * <p>
192          * @return Branch office's company
193          */
194         BusinessBasicData getBranchCompany ();
195
196         /**
197          * Setter for branch office's company
198          * <p>
199          * @param branchCompany Branch office's company
200          */
201         void setBranchCompany (final BusinessBasicData branchCompany);
202
203         /**
204          * Getter branch office's contact person
205          * <p>
206          * @return Branch office's contact person
207          */
208         Employee getBranchContactEmployee ();
209
210         /**
211          * Setter branch office's contact person
212          * <p>
213          * @param branchEmployee Branch office's contact person
214          */
215         void setBranchContactEmployee (final Employee branchEmployee);
216
217         /**
218          * Getter for user owner instance
219          * <p>
220          * @return User owner instance
221          */
222         User getBranchUserOwner ();
223
224         /**
225          * Setter for user owner instance
226          * <p>
227          * @param branchUserOwner User owner instance
228          */
229         void setBranchUserOwner (final User branchUserOwner);
230
231         /**
232          * Getter for timestamp when this entry has been created
233          * <p>
234          * @return Timestamp when this entry has been created
235          */
236         Calendar getBranchCreated ();
237
238         /**
239          * Setter for timestamp when this entry has been created
240          * <p>
241          * @param branchCreated Timestamp when this entry has been created
242          */
243         void setBranchCreated (final Calendar branchCreated);
244
245         @Override
246         boolean equals (final Object object);
247
248         @Override
249         int hashCode ();
250 }