77 public void add(TaskListener listener) { |
77 public void add(TaskListener listener) { |
78 for (TaskListener l: listeners) { |
78 for (TaskListener l: listeners) { |
79 if (ccw.unwrap(l) == listener) |
79 if (ccw.unwrap(l) == listener) |
80 throw new IllegalStateException(); |
80 throw new IllegalStateException(); |
81 } |
81 } |
82 TaskListener[] newListeners = new TaskListener[listeners.length + 1]; |
82 listeners = Arrays.copyOf(listeners, listeners.length + 1); |
83 System.arraycopy(listeners, 0, newListeners, 0, listeners.length); |
83 listeners[listeners.length - 1] = ccw.wrap(listener); |
84 newListeners[newListeners.length - 1] = ccw.wrap(listener); |
|
85 listeners = newListeners; |
|
86 } |
84 } |
87 |
85 |
88 public void remove(TaskListener listener) { |
86 public void remove(TaskListener listener) { |
89 for (int i = 0; i < listeners.length; i++) { |
87 for (int i = 0; i < listeners.length; i++) { |
90 if (ccw.unwrap(listeners[i]) == listener) { |
88 if (ccw.unwrap(listeners[i]) == listener) { |