1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.xml.spring;
17
18 import org.kuali.common.util.execute.Executable;
19 import org.kuali.common.util.spring.env.EnvironmentService;
20 import org.kuali.common.util.spring.event.ApplicationEventListenerConfig;
21 import org.kuali.common.util.spring.event.ExecutableApplicationEventListener;
22 import org.kuali.common.util.spring.service.SpringServiceConfig;
23 import org.springframework.beans.factory.annotation.Autowired;
24 import org.springframework.context.annotation.Bean;
25 import org.springframework.context.annotation.Configuration;
26 import org.springframework.context.annotation.Import;
27 import org.springframework.context.event.ContextRefreshedEvent;
28 import org.springframework.context.event.SmartApplicationListener;
29 import org.springframework.core.Ordered;
30
31
32
33
34
35
36
37 @Configuration
38 @Import({ SpringServiceConfig.class })
39 public class IngestXmlConfig implements ApplicationEventListenerConfig {
40
41 @Autowired
42 IngestXmlExecConfig config;
43
44 @Autowired
45 EnvironmentService env;
46
47 private static final String ORDER_KEY = "rice.ingest.order";
48
49 @Override
50 @Bean
51 public SmartApplicationListener applicationEventListener() {
52
53 Executable executable = config.ingestXmlExecutable();
54
55
56 int order = env.getInteger(ORDER_KEY, Ordered.LOWEST_PRECEDENCE);
57 return ExecutableApplicationEventListener.builder(executable, ContextRefreshedEvent.class).order(order).build();
58 }
59 }