01: // Copyright 2004, 2005 The Apache Software Foundation
02: //
03: // Licensed under the Apache License, Version 2.0 (the "License");
04: // you may not use this file except in compliance with the License.
05: // You may obtain a copy of the License at
06: //
07: // http://www.apache.org/licenses/LICENSE-2.0
08: //
09: // Unless required by applicable law or agreed to in writing, software
10: // distributed under the License is distributed on an "AS IS" BASIS,
11: // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12: // See the License for the specific language governing permissions and
13: // limitations under the License.
14:
15: package hivemind.test.services;
16:
17: import java.beans.PropertyChangeEvent;
18: import java.beans.PropertyChangeListener;
19: import java.beans.PropertyChangeSupport;
20:
21: /**
22: * Class used by {@link hivemind.test.services.TestEventLinker}.
23: *
24: * @author Howard M. Lewis Ship
25: */
26: public class EventProducer {
27: private PropertyChangeSupport _support = new PropertyChangeSupport(
28: this );
29: private int _count = 0;
30:
31: public void addPropertyChangeListener(
32: PropertyChangeListener listener) {
33: _support.addPropertyChangeListener(listener);
34:
35: _count++;
36: }
37:
38: public void removePropertyChangeListener(
39: PropertyChangeListener listener) {
40: _support.removePropertyChangeListener(listener);
41:
42: _count--;
43: }
44:
45: public void fire(PropertyChangeEvent event) {
46: _support.firePropertyChange(event);
47: }
48:
49: public int getListenerCount() {
50: return _count;
51: }
52:
53: public String toString() {
54: return "EventProducer";
55: }
56: }
|