1 /***
2 * Observer.java
3 *
4 * Project: Dependency Tool
5 *
6 * WHEN WHO WHAT
7 * 06.06.2003 pko initial public release
8 * 08.01.2002 PKO modification
9 * 22.01.2002 ctr modification
10 * 08.01.2002 ctr creation
11 *
12 * Copyright 2003 ELCA Informatique SA
13 * Av. de la Harpe 22-24, 1000 Lausanne 13, Switzerland
14 * www.elca.ch
15 *
16 * This library is free software; you can redistribute it and/or
17 * modify it under the terms of the GNU Lesser General Public License
18 * as published by the Free Software Foundation; either version 2.1 of
19 * the License, or (at your option) any later version.
20 *
21 * This library is distributed in the hope that it will be useful, but
22 * WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 * Lesser General Public License for more details.
25 *
26 * You should have received a copy of the GNU Lesser General Public
27 * License along with this library; if not, write to the Free Software
28 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
29 * USA
30 */
31
32 package ch.elca.dependency.core;
33
34 import java.util.ArrayList;
35
36 /***
37 * The <code>Observer</code> Interface is responsible for holding implizit all
38 * the views which belong to the controller of the MVC Pattern.<br>
39 * It defines the two overloaded update methods which have to be implemented by
40 * the views. Like that the model component of the MVC pattern must not know
41 * explicit all the classes on which it has to perform a update after a change
42 * of the model.<br>
43 * The diverse views are in a list as <code>Observers</code>.
44 *
45 * @see View
46 * @see ch.elca.dependency.model.FilteredModel
47 *
48 * @author Christoph Trutmann
49 * @author Pawel Kowalski
50 * @version 1.0-beta
51 */
52 public interface Observer {
53
54 /***
55 * Updates this Observer. Called by the model to indicate
56 * that a property has changed.
57 *
58 * @param dependencyModel a <code>DependencyModel</code> value
59 */
60 void update(DependencyModel dependencyModel);
61
62 /***
63 * Selects all the packages in the specified list for all the views
64 * implementing the <code>Observer</code> interface.
65 *
66 * @param selectList List containing all the selected packages.
67 */
68 void select(ArrayList selectList);
69
70 /***
71 * Clears all the selections in all the views.
72 */
73 void clearSelection();
74
75 }
This page was automatically generated by Maven