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