KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > nightlabs > base > entitylist > EntityManagementView


1 /*
2  * Created on Jun 1, 2005
3  *
4  */

5 package com.nightlabs.base.entitylist;
6
7 import java.util.HashSet JavaDoc;
8 import java.util.Iterator JavaDoc;
9 import java.util.Set JavaDoc;
10
11 import org.eclipse.ui.part.ViewPart;
12
13 /**
14  * @author Niklas Schiffler <nick@nightlabs.de>
15  *
16  */

17 public abstract class EntityManagementView extends ViewPart implements EntityManager
18 {
19     protected Set JavaDoc dataChangedListeners;
20
21     public EntityManagementView()
22     {
23         dataChangedListeners = new HashSet JavaDoc();
24     }
25
26     /**
27      * Get the id of this view
28      * @return the view id
29      */

30     public abstract String JavaDoc getViewID();
31
32   /**
33    * Call this when you modified the entity object.
34    *
35    */

36   public void notifyDataChangedListeners()
37   {
38     Iterator JavaDoc i = dataChangedListeners.iterator();
39     while(i.hasNext())
40         ((EntityDataChangedListener)i.next()).entityDataChanged(this);
41   }
42
43   /**
44    * Listen for modifications of the entity object
45    * @param listener your listener
46    */

47   public void addDataChangedListener(EntityDataChangedListener listener)
48   {
49     if(!dataChangedListeners.contains(listener))
50         dataChangedListeners.add(listener);
51   }
52
53   /**
54    * Remove a data changed listener
55    * @param listener the listener
56    */

57   public void removeDataChangedListener(EntityDataChangedListener listener)
58   {
59     if(dataChangedListeners.contains(listener))
60         dataChangedListeners.remove(listener);
61   }
62
63   public void dispose()
64   {
65     super.dispose();
66     dataChangedListeners.clear();
67     dataChangedListeners = null;
68   }
69
70 }
71
Popular Tags