1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.core.persistence.jpa;
20
21 import org.apache.syncope.common.lib.SyncopeConstants;
22 import org.apache.syncope.core.persistence.api.DomainHolder;
23 import org.apache.syncope.core.persistence.api.content.ContentLoader;
24 import org.apache.syncope.core.spring.ApplicationContextProvider;
25 import org.springframework.beans.factory.InitializingBean;
26 import org.springframework.beans.factory.support.DefaultListableBeanFactory;
27 import org.springframework.context.ConfigurableApplicationContext;
28
29 public class TestInitializer implements InitializingBean {
30
31 private final StartupDomainLoader domainLoader;
32
33 private final DomainHolder domainHolder;
34
35 private final ContentLoader contentLoader;
36
37 private final ConfigurableApplicationContext ctx;
38
39 public TestInitializer(
40 final StartupDomainLoader domainLoader,
41 final DomainHolder domainHolder,
42 final ContentLoader contentLoader,
43 final ConfigurableApplicationContext ctx) {
44
45 this.domainLoader = domainLoader;
46 this.domainHolder = domainHolder;
47 this.contentLoader = contentLoader;
48 this.ctx = ctx;
49 }
50
51 @Override
52 public void afterPropertiesSet() throws Exception {
53 ApplicationContextProvider.setApplicationContext(ctx);
54 ApplicationContextProvider.setBeanFactory((DefaultListableBeanFactory) ctx.getBeanFactory());
55
56 domainLoader.load();
57
58 contentLoader.load(
59 SyncopeConstants.MASTER_DOMAIN,
60 domainHolder.getDomains().get(SyncopeConstants.MASTER_DOMAIN));
61 if (domainHolder.getDomains().containsKey("Two")) {
62 contentLoader.load(
63 "Two",
64 domainHolder.getDomains().get("Two"));
65 }
66 }
67 }