]> git.mxchange.org Git - addressbook-swing.git/blob - Addressbook/src/org/mxchange/addressbook/contact/Contact.java
21044cfab83029d3e4f26b16b182fce1fdd01d8e
[addressbook-swing.git] / Addressbook / src / org / mxchange / addressbook / contact / Contact.java
1 /*\r
2  * Copyright (C) 2015 Roland Haeder\r
3  *\r
4  * This program is free software: you can redistribute it and/or modify\r
5  * it under the terms of the GNU General Public License as published by\r
6  * the Free Software Foundation, either version 3 of the License, or\r
7  * (at your option) any later version.\r
8  *\r
9  * This program is distributed in the hope that it will be useful,\r
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
12  * GNU General Public License for more details.\r
13  *\r
14  * You should have received a copy of the GNU General Public License\r
15  * along with this program.  If not, see <http://www.gnu.org/licenses/>.\r
16  */\r
17 package org.mxchange.addressbook.contact;\r
18 \r
19 import org.mxchange.addressbook.FrameworkInterface;\r
20 import org.mxchange.addressbook.client.Client;\r
21 \r
22 /**\r
23  *\r
24  * @author Roland Haeder\r
25  */\r
26 public interface Contact extends FrameworkInterface {\r
27 \r
28     /**\r
29      * Enables the flag "own data" which signals that this contact is the user's\r
30      * own data.\r
31      */\r
32     public void enableFlagOwnContact();\r
33 \r
34     /**\r
35      * Some "getter" for translated gender of the contact\r
36      * @return Translated / human-readable gender\r
37      */\r
38     public String getTranslatedGender();\r
39 \r
40     /**\r
41      * Checks whether the contact is user's own data\r
42      *\r
43      * @return Own data?\r
44      */\r
45     public boolean isOwnContact();\r
46 \r
47     /**\r
48      * Gender of the contact\r
49      *\r
50      * @return the gender\r
51      */\r
52     public char getGender();\r
53 \r
54     /**\r
55      * Surname\r
56      *\r
57      * @return the surname\r
58      */\r
59     public String getSurname();\r
60 \r
61     /**\r
62      * Family name\r
63      *\r
64      * @return the familyName\r
65      */\r
66     public String getFamilyName();\r
67 \r
68     /**\r
69      * Companyname\r
70      *\r
71      * @return the companyName\r
72      */\r
73     public String getCompanyName();\r
74 \r
75     /**\r
76      * Street\r
77      *\r
78      * @return the street\r
79      */\r
80     public String getStreet();\r
81 \r
82     /**\r
83      * House number\r
84      *\r
85      * @return the houseNumber\r
86      */\r
87     public int getHouseNumber();\r
88 \r
89     /**\r
90      * ZIP code\r
91      *\r
92      * @return the zipCode\r
93      */\r
94     public int getZipCode();\r
95 \r
96     /**\r
97      * City\r
98      *\r
99      * @return the city\r
100      */\r
101     public String getCity();\r
102 \r
103     /**\r
104      * Country code\r
105      *\r
106      * @return the countryCode\r
107      */\r
108     public String getCountryCode();\r
109 \r
110     /**\r
111      * Email address\r
112      *\r
113      * @return the emailAddress\r
114      */\r
115     public String getEmailAddress();\r
116 \r
117     /**\r
118      * Phone number\r
119      *\r
120      * @return the phoneNumber\r
121      */\r
122     public String getPhoneNumber();\r
123 \r
124     /**\r
125      * Fax number\r
126      *\r
127      * @return the faxNumber\r
128      */\r
129     public String getFaxNumber();\r
130 \r
131     /**\r
132      * Cellphone number\r
133      *\r
134      * @return the cellphoneNumber\r
135      */\r
136     public String getCellphoneNumber();\r
137 \r
138     /**\r
139      * Birth day\r
140      *\r
141      * @return the birthday\r
142      */\r
143     public String getBirthday();\r
144 \r
145     /**\r
146      * Comments\r
147      *\r
148      * @return the comment\r
149      */\r
150     public String getComment();\r
151 \r
152     /**\r
153      * Shows the contact to the user\r
154      *\r
155      * @param client Client instance to call back\r
156      */\r
157     public void show (final Client client);\r
158 \r
159     /**\r
160      * Updates address data in this Contact instance\r
161      * \r
162      * @param street Street\r
163      * @param zipCode ZIP code\r
164      * @param city City\r
165      * @param countryCode Country code\r
166      */\r
167     public void updateAddressData (final String street, final int zipCode, final String city, final String countryCode);\r
168 \r
169     /**\r
170      * Updates name data in this Contact instance\r
171      * \r
172      * @param gender Gender (M, F, C)\r
173      * @param surname Surname\r
174      * @param familyName Family name\r
175      * @param companyName Company name\r
176      */\r
177     public void updateNameData (final char gender, final String surname, final String familyName, final String companyName);\r
178 }\r