1
2
3
4
5
6
7
8
9
10
11 package org.mule.service.processor;
12
13 import org.mule.api.MuleEvent;
14 import org.mule.api.service.Service;
15 import org.mule.processor.AbstractMessageObserver;
16
17 public class ServiceStatisticsMessageObserver extends AbstractMessageObserver
18 {
19 protected Service service;
20
21 public ServiceStatisticsMessageObserver(Service service)
22 {
23 this.service = service;
24 }
25
26 @Override
27 public void observe(MuleEvent event)
28 {
29 if (service.getStatistics().isEnabled())
30 {
31 if (event.getEndpoint().getExchangePattern().hasResponse())
32 {
33 service.getStatistics().incReceivedEventSync();
34 }
35 else
36 {
37 service.getStatistics().incReceivedEventASync();
38 }
39 }
40 }
41 }