1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package javax.faces.event;
20
21 import javax.faces.component.UIComponent;
22
23
24
25
26
27 public abstract class ComponentSystemEvent extends SystemEvent
28 {
29 public ComponentSystemEvent(UIComponent component)
30 {
31 super(component);
32 }
33
34 public UIComponent getComponent()
35 {
36 return (UIComponent) getSource();
37 }
38
39 @Override
40 public boolean isAppropriateListener(FacesListener listener)
41 {
42 return listener instanceof ComponentSystemEventListener ||
43 super.isAppropriateListener(listener);
44 }
45
46 @Override
47 public void processListener(FacesListener listener)
48 {
49 if (listener instanceof SystemEventListener)
50 {
51 super.processListener(listener);
52 }
53 else if (listener instanceof ComponentSystemEventListener)
54 {
55 ((ComponentSystemEventListener)listener).processEvent(this);
56 }
57 }
58 }