Commit Graph

290 Commits

Author SHA1 Message Date
Spencer Gibb
109e5779e9 Ignores MapPropertySources not created by boot
Prior to this change, any `MapPropertySource` created by an `EnvironmentPostProcessor` would be processed by `BootstrapApplicationListener`. If that property source had a conditional property that it created itself, the 2nd run (bootstrap causes EPPs to run twice) would not have the property and that property source would end up in the main `Environment` effectively deleting a property.

This change only deals with `MapPropertySource`s created by boot testing for a specific sub-type.

Fixes gh-476
2019-02-13 11:33:06 -05:00
Marcin Grzejszczak
377eaad4a1 Checkstyle for tests 2019-02-03 15:13:41 +01:00
Marcin Grzejszczak
04d764d33a Updated copyrights 2019-02-01 14:41:18 +01:00
Marcin Grzejszczak
ae314100f5 Applied checkstyle and turned it on by default 2019-02-01 12:50:02 +01:00
Jasper Aarts
e024f6f5c2 Fix override behaviour when using CompositePropertySource. (#473)
* Fix override behaviour when using CompositePropertySource.
Fixes gh-471

* Improve imports
2019-01-31 20:51:37 -05:00
Ryan Baxter
ddcd40736f Merge remote-tracking branch 'origin/2.0.x' 2019-01-18 16:14:12 -05:00
Ryan Baxter
d7d0320905 Merge remote-tracking branch 'origin/1.3.x' into 2.0.x 2019-01-18 16:13:43 -05:00
Ryan Baxter
b91e2ab731 Trim profile names in array (#469)
* Trim profile names in array.  Fixes #460

* Use tokenizeToStringArray
2019-01-18 16:12:52 -05:00
Ryan Baxter
43c270a53c Provide exact error when there is a problem opening the logging config file. Fixes #464 (#470) 2019-01-18 10:30:05 -05:00
Ryan Baxter
7ee51d9bc8 Provide exact error when there is a problem opening the logging config file. Fixes #464 (#470) 2019-01-18 10:29:14 -05:00
Ryan Baxter
ecabe2bb8d Merge remote-tracking branch 'origin/2.0.x' 2019-01-07 12:43:08 -05:00
Jasper Aarts
59798f52ed Only attempt to decrypt properties that are not overridden (#462) 2019-01-07 12:33:09 -05:00
Jasper Aarts
4a66435d38 Allow overriding encrypted properties with unencrypted properties (#459) 2018-12-21 15:05:57 -05:00
Dave Syer
daff90f230 Ensure null order is not allowed to bubble up to annotation utils
Fixes gh-456
2018-12-11 11:00:31 +00:00
Ryan Baxter
8d0f64fd93 Add property to disable WritableEnvironmentEndpoint. Fixes #432. (#453) 2018-12-06 22:09:13 +01:00
Spencer Gibb
2515e45405 Closes bootstrap context on parent ApplicationFailedEvent. (#450)
Closes bootstrap context on parent ApplicationFailedEvent.

fixes gh-440
2018-11-29 10:59:11 -05:00
Spencer Gibb
1acb2b8b8b Moves away from Class.forName() to order. 2018-11-19 16:47:18 -05:00
Spencer Gibb
5df3c48fae Moves BootstrapConfiguration classes to ImportSelector. (#444)
This change moves a dynamic list of classes passed to
`SpringApplicationBuilder.sources` to a `DeferredImportSelector` loaded
by a simple `@Configuration` class. `BootstrapImportSelector` now loads
the classes and orders them and returns the class names so that
`@Conditional` annotations (such as `@ConditionalOnClass`) function
properly.

This was exposed while using java 11.

fixes gh-438
2018-11-19 11:12:23 -05:00
Dave Syer
c5138b5bb8 Merge remote-tracking branch 'origin/2.0.x' 2018-10-29 08:47:09 +00:00
Ryan Baxter
9b8a70e557 Check type before invoking bean factory to prevent early creation of FactoryBeans. (#436) 2018-10-27 07:45:26 -04:00
Spencer Gibb
60d2a1ead3 Merge branch '2.0.x' 2018-10-22 16:00:25 -04:00
lxy
bbc82b423c Set MainApplicationClass if it is null (#426)
MainApplicationClass will be null, if it is booted from SpringBootServletInitializer. So we need to set it properly.

Fixes gh-425
2018-10-18 09:51:59 -04:00
Spencer Gibb
cd0ff1b1d5 Merge branch '2.0.x' 2018-10-05 17:46:12 -04:00
Spencer Gibb
b86b637f47 Removes previous bean definitions rather than calling setAllowBeanDefinitionOverriding
See gh-395
2018-10-05 14:31:39 -04:00
Spencer Gibb
6c9231a4da Verify ConfigProps is a bean and refreshables is actually tested. 2018-10-04 11:47:43 -04:00
Spencer Gibb
4da0d95e11 Restores refreshable support using BeanDefinitionRegistryPostProcessor 2018-10-04 11:42:19 -04:00
Spencer Gibb
1fa513194b Adds API and implementation of ReactiveLoadBalancer
API lives in spring-cloud-commons module and implementation in
spring-cloud-loadbalancer.
2018-10-03 12:38:12 -04:00
durigon
b91313d913 Refactor String#replaceAll (#417)
If we repeatedly call String#replaceAll, we internally repeatedly call the regular expression pattern compilation every time as following:
```java
    public String replaceAll(String regex, String replacement) {
        return Pattern.compile(regex).matcher(this).replaceAll(replacement);
    }
```
The modifications are to keep the compiled pattern.
Therefore, compiling a relatively expensive regular expression pattern does not have to be done every time.
2018-09-19 20:41:07 -04:00
Jone
b606806066 Fixes decryption of CompositePropertySource
Since CompositePropertySource extends EnumerablePropertySource
the else statement in
EnvironmentDecryptApplicationInitializer.decrypt() was never reached.
2018-09-10 13:37:10 -04:00
Spencer Gibb
1d646290ab Moves away from @EventListener to interface implementations for framework 5.1 changes
fixes gh-405
2018-08-21 11:42:27 -04:00
Spencer Gibb
23d7eae038 Moves away from @EventListener to interface implementations for framework 5.1 changes 2018-08-21 11:14:48 -04:00
Spencer Gibb
75e504765f Merge branch '2.0.x' 2018-08-15 14:49:22 -04:00
Spencer Gibb
6533e0ca53 Makes ContextRefresher easier to extend.
Adds protected getters for context and scope.

Adds new refreshEnvironment() method.

fixes gh-382
2018-08-15 14:48:58 -04:00
Ben Klein
55c7833e4c Minor Javadoc cleanup (#401)
Nothing major found--mostly just polish.
2018-08-06 13:02:41 -04:00
Spencer Gibb
87bb8f1fa1 Upgrades to build 2.1.0.BUILD-SNAPSHOT and boot 2.1.x
Moves refresh scope proxy creation from BeanDefinitionRegistryPostProcessor to BeanPostProcessor

fixes gh-400
2018-08-02 11:19:17 -04:00
Spencer Gibb
69181c14d1 formatting 2018-08-01 13:20:28 -04:00
Ryan Baxter
7949aaa1b5 Merge remote-tracking branch 'origin/1.3.x' 2018-07-30 16:40:12 -04:00
Ryan Baxter
57ab7ed469 Add null check in RefreshScopeHealthIndicator. Fixes #397. (#398) 2018-07-26 15:09:05 -04:00
Ryan Baxter
1de9d12150 Extract target class code into utility class (#391)
* Extract target class code into utility class
2018-07-11 16:01:14 -04:00
Spencer Gibb
bd138dac44 fixes formatting 2018-06-13 16:09:30 -04:00
Spencer Gibb
13722cb6b7 Merge branch '1.3.x' 2018-06-13 16:06:43 -04:00
Matt Benson
e833dbaa37 Fix GenericScope so that multiple subclasses can live in the same context (non-static inner class cannot resolve parent bean) 2018-06-13 15:59:16 -04:00
Spencer Gibb
a8e90681b7 Renames environmentWebEndpointExtension to environmentEndpointWebExtension.
This matches boot, even though the boot bean shouldn't be created because of a @ConditionalOnMissingBean

see gh-374
2018-05-31 12:57:42 -04:00
Dave Syer
0e259eab35 Workaround for data source cycle with hibernate
The JpaInvokerConfiguration (nested in RefreshAutoConfiguration can be
removed when and if the issue is resolved in Boot.

Also splits the hibernate test dependencies out into a separate module
so the main context tests run quicker.

Fixes gh-355
2018-05-11 09:40:52 +01:00
Peter Lajko
f7519a30ad RestartEndpoint fixed (#366)
* RestartEndpoint fixed

* method naming fix
2018-05-10 15:44:30 -04:00
Stéphane Nicoll
6560e8896c Polish (#369) 2018-05-10 15:33:07 +02:00
Stephane Nicoll
bf5de108e2 Stop exposing a duplicate web extension for the env endpoint
An actuator endpoint is designed around a single class flagged with
`@Endpoint`. Such endpoint can have some of its operations refined with
a given tech (for instance via a `EndpointWebExtension` for web specific
concerns).

This design mandates that an endpoint (and its tech specific refinements
are managed centrally to form a unified contract).

As Spring Cloud is extending the standard Spring Boot's `env` endpoint,
this commit introduces a WritableEnvironmentEndpoint with a web
extension.

Closes gh-367
Closes gh-354
2018-05-10 10:53:43 +01:00
Dave Syer
d80d07e160 Unused imports 2018-05-03 11:02:57 -04:00
Ryan Baxter
f2e018fb6d Revert "Move RefreshScope to a static @Bean method"
This reverts commit 77ac09b119.
2018-05-02 15:05:13 -04:00
Dave Syer
77ac09b119 Move RefreshScope to a static @Bean method
The test shows that this fixes a weird initialization ordering
problem that leads otherwise to Spring thinking there is a
dependency cycle (even though there is not). This problem only
surfaces when there is a schema.sql to apply.

Fixes gh-355
2018-05-02 05:46:46 -04:00