Commit Graph

272 Commits

Author SHA1 Message Date
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
Johnny Lim
dbac0f06fe Polish RefreshScopeBeanDefinitionEnhancer.setRefreshable() (#362) 2018-04-30 20:04:13 -04:00
Spencer Gibb
78b11c35ff GenericScope throws original checked exception, rather than UndeclaredThrowableException
fixes gh-349
2018-04-02 12:29:39 -04:00
Spencer Gibb
70ff397188 Moves to new classpath exclusion classes 2018-03-21 10:48:33 -04:00
Spencer Gibb
384a576c4e Merge branch '1.3.x' 2018-03-21 10:40:11 -04:00
Ryan Baxter
ee5034ee0d Move RSA properties to its own class and make it conditional (#342)
Avoids ClassNotFoundException when RSA is not on the classpath. 

Fixes gh-334.
2018-03-21 10:35:24 -04:00
Marcin Grzejszczak
ec11d4bbfe Avoiding NPE for proxied beans upon context shutdown; fixes gh-340 2018-03-20 13:50:59 +01:00
Spencer Gibb
78d25f0fc0 Don't rebind beans with no implementation.
fixes gh-337
2018-03-16 13:53:59 -04:00
Dave Syer
3bc1576897 Merge branch '1.3.x' 2018-03-08 12:01:05 +00:00
Dave Syer
5802c0e2be Actually close parent context in RestartEndpoint
There could be consequences for apps that have more complex context
hierarchies, but RestartEndpoint doesn't work well at all for those
apps anyway, so we are probably safe to just make changes in the
endpoint itself.

Fixes gh-333
2018-03-08 11:55:49 +00:00
Dave Syer
dcc822626b Add a configurable of beans to postprocess into refresh scope
Allows you to apply @RefreshScope to beans that you do not
control or define. The list is configurable as
spring.cloud.refresh.refreshable and by default has only
HikariDataSource.

Fixes gh-318
2018-03-02 15:54:25 +00:00
Dave Syer
d14e8ffa1a Add test for binding to Hikari DataSource 2018-03-02 13:38:35 +00:00
Dave Syer
b6df5e2425 Add encrypt.salt configuration option 2018-02-22 11:07:06 +00:00
Spencer Gibb
43ea0461ee Uses new BEAN_NAME constant from spring boot 2.0
fixes gh-324
2018-02-18 13:11:42 -05:00
Biju Kunjummen
e77a3fd498 Allows more standard rsa private key for config values encryption (#323) 2018-02-15 13:50:03 -05:00
Spencer Gibb
fbabe7e3e9 Revert "Fix wrong property name to expose actuators"
This reverts commit 18ba863
2018-02-13 10:02:48 -05:00
Spencer Gibb
216d49fdd9 Move to new class name 2018-02-13 10:02:28 -05:00
Dave Syer
b5ac8fe725 Fix compiler warnings 2018-02-13 09:29:30 +00:00
Dave Syer
18ba863e5f Fix wrong property name to expose actuators 2018-02-13 09:26:02 +00:00