1 /*
2 * This file is part of Domingo
3 * an Open Source Java-API to Lotus Notes/Domino
4 * hosted at http://domingo.sourceforge.net
5 *
6 * Copyright (c) 2003-2007 Beck et al. projects GmbH Munich, Germany (http://www.bea.de)
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 */
22 package de.bea.domingo.groupware;
23
24 import java.util.Iterator;
25
26 /***
27 * Interface to the mail functionality of a Notes address book.
28 *
29 * @author <a href=mailto:schwarz_dot_dan_at_gmail_dot_com>Daniel Schwarz</a>
30 */
31 public interface AddressBook {
32
33 /***
34 * Returns an iterator over all contacts in the Address Book.
35 *
36 * <p>
37 * Should return in alphabetical order
38 * </p>
39 *
40 * @return iterator over all contacts in the Address Book
41 */
42
43 Iterator getContacts();
44
45 /***
46 * Indicates if a database is a Personal Address Book.
47 *
48 * @return <code>true</code> if the database is a Personal Address Book,
49 * <code>false</code> if the database is not Personal Address Book
50 */
51 boolean isPrivate();
52
53 /***
54 * Indicates if a database is a Public Address Book.
55 *
56 * @return <code>true</code> if the database is a Public Address Book,
57 * <code>false</code> if the database is not Public Address Book
58 */
59 boolean isPublic();
60
61 /***
62 * Returns the title of the Address Book.
63 *
64 * @return title
65 */
66 String getTitle();
67
68 }