1
2
3
4
5
6
7
8
9
10
11 package org.mule.extras.spring.events;
12
13 import org.mule.tck.functional.EventCallback;
14
15 import org.apache.commons.logging.Log;
16 import org.apache.commons.logging.LogFactory;
17 import org.springframework.context.ApplicationEvent;
18 import org.springframework.context.ApplicationListener;
19
20
21
22
23
24
25 public class TestApplicationEventBean implements ApplicationListener
26 {
27 private final Log logger = LogFactory.getLog(this.getClass());
28 private EventCallback eventCallback;
29
30 public void onApplicationEvent(ApplicationEvent event)
31 {
32 logger.debug("Received Spring event: " + event.getClass().getName());
33
34 if (eventCallback != null)
35 {
36 try
37 {
38 eventCallback.eventReceived(null, event);
39 }
40 catch (Exception e1)
41 {
42 throw new RuntimeException("Callback failed: " + e1.getMessage(), e1);
43 }
44 }
45 }
46
47 public EventCallback getEventCallback()
48 {
49 return eventCallback;
50 }
51
52 public void setEventCallback(EventCallback eventCallback)
53 {
54 this.eventCallback = eventCallback;
55 }
56
57 }