1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package ch.qos.logback.classic.joran;
16
17 import ch.qos.logback.core.spi.ConfigurationEvent;
18 import ch.qos.logback.core.spi.ConfigurationEventListener;
19
20 import java.util.concurrent.CountDownLatch;
21
22 class ReconfigurationDoneListener implements ConfigurationEventListener {
23 CountDownLatch countDownLatch;
24
25 ReconfigureOnChangeTask roct;
26 ReconfigurationDoneListener(CountDownLatch countDownLatch, ReconfigureOnChangeTask aRoct) {
27 this.countDownLatch = countDownLatch;
28 this.roct = aRoct;
29 }
30
31 @Override
32 public void listen(ConfigurationEvent configurationEvent) {
33 switch (configurationEvent.getEventType()) {
34 case CONFIGURATION_ENDED:
35 if(roct == null) {
36 countDownLatch.countDown();
37 } else {
38 Object data = configurationEvent.getData();
39 if(data instanceof ReconfigureOnChangeTask && roct == data) {
40 countDownLatch.countDown();
41 }
42 }
43 break;
44 default:
45 }
46
47 }
48 }