|
1 | 1 | /* |
2 | | - * Copyright 2012-2021 the original author or authors. |
| 2 | + * Copyright 2012-2022 the original author or authors. |
3 | 3 | * |
4 | 4 | * Licensed under the Apache License, Version 2.0 (the "License"); |
5 | 5 | * you may not use this file except in compliance with the License. |
|
34 | 34 | import org.springframework.beans.factory.support.BeanDefinitionBuilder; |
35 | 35 | import org.springframework.beans.factory.support.BeanDefinitionRegistry; |
36 | 36 | import org.springframework.boot.util.Instantiator; |
| 37 | +import org.springframework.context.EnvironmentAware; |
37 | 38 | import org.springframework.context.annotation.Import; |
38 | 39 | import org.springframework.context.annotation.ImportBeanDefinitionRegistrar; |
39 | 40 | import org.springframework.core.Ordered; |
|
63 | 64 | */ |
64 | 65 | public class DatabaseInitializationDependencyConfigurer implements ImportBeanDefinitionRegistrar { |
65 | 66 |
|
66 | | - private final Environment environment; |
67 | | - |
68 | | - DatabaseInitializationDependencyConfigurer(Environment environment) { |
69 | | - this.environment = environment; |
70 | | - } |
71 | | - |
72 | 67 | @Override |
73 | 68 | public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) { |
74 | 69 | String name = DependsOnDatabaseInitializationPostProcessor.class.getName(); |
75 | 70 | if (!registry.containsBeanDefinition(name)) { |
76 | | - BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition( |
77 | | - DependsOnDatabaseInitializationPostProcessor.class, |
78 | | - this::createDependsOnDatabaseInitializationPostProcessor); |
| 71 | + BeanDefinitionBuilder builder = BeanDefinitionBuilder |
| 72 | + .rootBeanDefinition(DependsOnDatabaseInitializationPostProcessor.class); |
79 | 73 | registry.registerBeanDefinition(name, builder.getBeanDefinition()); |
80 | 74 | } |
81 | 75 | } |
82 | 76 |
|
83 | | - private DependsOnDatabaseInitializationPostProcessor createDependsOnDatabaseInitializationPostProcessor() { |
84 | | - return new DependsOnDatabaseInitializationPostProcessor(this.environment); |
85 | | - } |
86 | | - |
87 | 77 | /** |
88 | 78 | * {@link BeanFactoryPostProcessor} used to configure database initialization |
89 | 79 | * dependency relationships. |
90 | 80 | */ |
91 | | - static class DependsOnDatabaseInitializationPostProcessor implements BeanFactoryPostProcessor, Ordered { |
| 81 | + static class DependsOnDatabaseInitializationPostProcessor |
| 82 | + implements BeanFactoryPostProcessor, EnvironmentAware, Ordered { |
92 | 83 |
|
93 | | - private final Environment environment; |
| 84 | + private Environment environment; |
94 | 85 |
|
95 | | - DependsOnDatabaseInitializationPostProcessor(Environment environment) { |
| 86 | + @Override |
| 87 | + public void setEnvironment(Environment environment) { |
96 | 88 | this.environment = environment; |
97 | 89 | } |
98 | 90 |
|
|
0 commit comments