]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.support.simple/src/main/java/org/argeo/slc/msg/event/SlcEventListenerRegister.java
Event management
[gpl/argeo-slc.git] / runtime / org.argeo.slc.support.simple / src / main / java / org / argeo / slc / msg / event / SlcEventListenerRegister.java
1 package org.argeo.slc.msg.event;
2
3 import java.io.Serializable;
4 import java.util.ArrayList;
5 import java.util.List;
6 import java.util.Vector;
7
8 public class SlcEventListenerRegister implements Serializable {
9 static final long serialVersionUID = 1l;
10
11 /** Synchronized */
12 private List<SlcEventListenerDescriptor> descriptors = new Vector<SlcEventListenerDescriptor>();
13
14 public synchronized void addEventListenerDescriptor(
15 SlcEventListenerDescriptor eventListenerDescriptor) {
16 if (descriptors.contains(eventListenerDescriptor))
17 descriptors.remove(eventListenerDescriptor);
18 descriptors.add(eventListenerDescriptor);
19 }
20
21 public synchronized void removeEventListenerDescriptor(
22 SlcEventListenerDescriptor eventListenerDescriptor) {
23 descriptors.remove(eventListenerDescriptor);
24 }
25
26 public synchronized List<SlcEventListenerDescriptor> getDescriptorsCopy() {
27 return new ArrayList<SlcEventListenerDescriptor>(descriptors);
28 }
29 }