2 * Copyright (C) 2015 Roland Haeder
\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
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
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
17 package org.mxchange.addressbook.contact;
\r
19 import org.mxchange.addressbook.FrameworkInterface;
\r
20 import org.mxchange.addressbook.client.Client;
\r
24 * @author Roland Haeder
\r
26 public interface Contact extends FrameworkInterface {
\r
29 * Enables the flag "own data" which signals that this contact is the user's
\r
32 public void enableFlagOwnContact();
\r
35 * Some "getter" for translated gender of the contact
\r
36 * @return Translated / human-readable gender
\r
38 public String getTranslatedGender();
\r
41 * Checks whether the contact is user's own data
\r
45 public boolean isOwnContact();
\r
48 * Gender of the contact
\r
50 * @return the gender
\r
52 public char getGender();
\r
57 * @return the surname
\r
59 public String getSurname();
\r
64 * @return the familyName
\r
66 public String getFamilyName();
\r
71 * @return the companyName
\r
73 public String getCompanyName();
\r
78 * @return the street
\r
80 public String getStreet();
\r
85 * @return the houseNumber
\r
87 public int getHouseNumber();
\r
92 * @return the zipCode
\r
94 public int getZipCode();
\r
101 public String getCity();
\r
106 * @return the countryCode
\r
108 public String getCountryCode();
\r
113 * @return the emailAddress
\r
115 public String getEmailAddress();
\r
120 * @return the phoneNumber
\r
122 public String getPhoneNumber();
\r
127 * @return the faxNumber
\r
129 public String getFaxNumber();
\r
134 * @return the cellphoneNumber
\r
136 public String getCellphoneNumber();
\r
141 * @return the birthday
\r
143 public String getBirthday();
\r
148 * @return the comment
\r
150 public String getComment();
\r
153 * Shows the contact to the user
\r
155 * @param client Client instance to call back
\r
157 public void show (final Client client);
\r
160 * Updates address data in this Contact instance
\r
162 * @param street Street
\r
163 * @param zipCode ZIP code
\r
165 * @param countryCode Country code
\r
167 public void updateAddressData (final String street, final int zipCode, final String city, final String countryCode);
\r
170 * Updates name data in this Contact instance
\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
177 public void updateNameData (final char gender, final String surname, final String familyName, final String companyName);
\r
180 * Updates other data in this Contact instance
\r
182 * @param phoneNumber Phone number
\r
183 * @param cellNumber Cellphone number
\r
184 * @param faxNumber Fax number
\r
185 * @param email Email address
\r
186 * @param comment Comments
\r
188 public void updateOtherData (final String phoneNumber, final String cellNumber, final String faxNumber, final String email, final String comment);
\r