1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.commons.jcs3.jcache;
20
21 import org.apache.commons.jcs3.engine.control.event.behavior.IElementEvent;
22 import org.apache.commons.jcs3.engine.control.event.behavior.IElementEventHandler;
23
24 public class EvictionListener implements IElementEventHandler
25 {
26 private final Statistics stats;
27
28 public EvictionListener(final Statistics statistics)
29 {
30 this.stats = statistics;
31 }
32
33 @Override
34 public <T> void handleElementEvent(final IElementEvent<T> event)
35 {
36 switch (event.getElementEvent())
37 {
38 case EXCEEDED_MAXLIFE_BACKGROUND:
39 case EXCEEDED_MAXLIFE_ONREQUEST:
40 case EXCEEDED_IDLETIME_ONREQUEST:
41 case EXCEEDED_IDLETIME_BACKGROUND:
42 stats.increaseEvictions(1);
43 break;
44 default:
45 break;
46 }
47 }
48 }