Commit Graph

698 Commits

Author SHA1 Message Date
Stephane Nicoll
8d1bd7eb3c Polish 2017-12-28 14:57:49 +01:00
Stephane Nicoll
81af02fde7 Improve JVM metrics
This commit adds GC and thread jvm metrics to the existing memory
metrics. All three are now managed by a unique
management.metrics.binders.jvm.enabled property.

Closes gh-11425
2017-12-28 14:57:13 +01:00
sdeleuze
945ca00b5b Upgrade to Kotlin 1.2
apiVersion and languageVersion options are set to 1.1
in order to avoid incompatibilities with Kotlin 1.1
based projects.

Closes gh-11235
2017-12-28 13:44:22 +01:00
Stephane Nicoll
2bd8c2bfca Polish
See gh-11181
2017-12-28 12:52:40 +01:00
Stephane Nicoll
c709ff8e3b Polish "Apply customize() to createCredentialNetworkMongoClient()"
Closes gh-11376
2017-12-28 12:39:54 +01:00
Johnny Lim
90369996a9 Apply customize() to createCredentialNetworkMongoClient()
See gh-11376
2017-12-28 12:39:06 +01:00
Stephane Nicoll
601b5e4d9a Replace SystemProperties by TestPropertyValues
Closes gh-9852
2017-12-28 12:32:03 +01:00
Stephane Nicoll
f0d94a46fd Polish 2017-12-28 12:09:27 +01:00
Stephane Nicoll
afba8fed79 Harmonize management.server.context-path property
This commit moves management.server.context-path to
management.server.servlet.context-path to align with the configuration
key for the application's main context path.

Closes gh-11359
2017-12-28 12:08:51 +01:00
Stephane Nicoll
5328508421 Merge branch '1.5.x' 2017-12-28 11:27:25 +01:00
Stephane Nicoll
2738147947 Polish "Move CorsEndpointProperties to the parent package"
Closes gh-11439
2017-12-28 11:01:14 +01:00
Johnny Lim
8383b76138 Move CorsEndpointProperties to the parent package
`CorsEndpointProperties` lives in `endpoint.web.servlet` but is also used
in `endpoint.web.reactive`, so this PR moves it to its common parent
package.

This commit also extracts `CorsConfiguration` creation logic duplicated
in `WebMvcEndpointManagementContextConfiguration` and
`WebFluxEndpointManagementContextConfiguration` into
`CorsEndpointProperties`.

See gh-11439
2017-12-28 10:40:51 +01:00
Stephane Nicoll
f57ff3a777 Merge branch '1.5.x' 2017-12-27 17:15:01 +01:00
Johnny Lim
38a188f557 Add a Checkstyle rule to prevent Commons Lang/Lang 3 imports
Closes gh-11432
2017-12-27 16:46:34 +01:00
Johnny Lim
8f7ab95e0e Use BufferedReader.lines()
Closes gh-11436
2017-12-27 16:44:27 +01:00
Stephane Nicoll
50a4982a52 Merge branch '1.5.x' 2017-12-27 16:35:36 +01:00
Joe Kutner
c5695c8f78 Fix spring.quartz.jdbc.initialize-schema value
Use enum value from DataSourceInitializationMode instead of Boolean.

Closes gh-11433
2017-12-27 16:15:25 +01:00
Johnny Lim
3c5ccb1166 Polish
Closes gh-11418
2017-12-26 09:47:10 +01:00
Johnny Lim
b35348b41d Remove org.flywaydb.core.internal.util.StringUtils import
Closes  gh-11396
2017-12-24 12:20:03 +01:00
Stephane Nicoll
a8f5e1a361 Merge branch '1.5.x' 2017-12-24 12:19:40 +01:00
Johnny Lim
e32287164b Use Supplier version of Assert.state()
Closes gh-11362
2017-12-23 14:31:38 +01:00
Johnny Lim
3a276d2a87 Rename CloudFoundryHealthWebEndpointManagementContextConfiguration
Closes gh-11400
2017-12-23 14:23:24 +01:00
Johnny Lim
4cc598ac5e Replace contains() with indexOf()
Closes gh-11373
2017-12-23 14:00:27 +01:00
Stephane Nicoll
544c40d46d Upgrade to Spring Kafka 2.1.0.RELEASE
Closes gh-11415
2017-12-23 13:44:49 +01:00
Johnny Lim
240aaadd83 Fix package name for InfluxDB
Closes gh-11364
2017-12-23 13:27:58 +01:00
Johnny Lim
e4f0ad2165 Polish
Closes gh-11372
2017-12-23 13:11:53 +01:00
dreis2211
a434e5cc5f Fix JsonbHttpMessageConvertersConfiguration javadoc
Closes gh-11368
2017-12-23 12:54:50 +01:00
Eddú Meléndez
cc9b2a9786 Fix property key to enable influxdb health endpoint
Closes gh-11365
2017-12-23 12:51:24 +01:00
Phillip Webb
ad1c8d773f Start properties validator in background thread
Change the default JSR-303 validator used by the configuration
properties binder so that it's initialized in a background thread.
This change allows the context to carry on loading additional beans
whilst the validator is initializing.

Fixes gh-11412
2017-12-22 21:16:47 -08:00
Phillip Webb
5f10c82284 Change property mapper to use array returns
Update the `PropertyMapper` interface to return arrays rather than
Lists. Since implementations are package-private it's possible for us
to control how they are used and it helps to save a little memory.

Fixes gh-11411
2017-12-22 20:57:38 -08:00
Phillip Webb
2efa21c570 Make hot methods in-line friendly
Refactor a few hot methods so that they are more likely to be in-lined
by the JIT.

Fixes gh-11409
2017-12-22 20:55:47 -08:00
Phillip Webb
e141f77801 Share BinderConversionService with a static
Use a single shared static `BinderConversionService` instance for all
created binders to save memory and improve performance.

Fixes gh-11352
2017-12-22 20:54:00 -08:00
Phillip Webb
6cb331ed2c Cache endpoint enabled-by-default result
Update `OnEnabledEndpointCondition` so that the result of
`management.endpoints.enabled-by-default` is cached between calls.

Fixes gh-11407
2017-12-22 20:52:07 -08:00
Phillip Webb
7f0048a899 Use fast exceptions when enumerating resources
Update the `LaunchedURLClassLoader` used for fat jar support so that
each iteration on a `findResources` result also allows for fast
exceptions.

Fixes gh-11406
2017-12-22 20:50:07 -08:00
Phillip Webb
aa66d5dfb8 Reduce garbage created when loading fat jars
Refactor fat jar loader classes so that less `char[]` instances are
created. This is primarily achieved by adding a new `StringSequence`
class that can chop up Strings without needing to copy the underlying
array. Since Java 8, calls to `String.subString(...)` always copy the
underlying char array. For many of the operations that we need, this
is unnecessary.

Fixes gh-11405
2017-12-22 20:49:17 -08:00
Phillip Webb
c024313141 Drop environment variable "__" list support
Remove support for the `__` environment variable list shortcut in order
to reduce complexity. The shortcut was developed before the new `Binder`
code was fully formed and isn't really necessary now since comma-lists
can be converted automatically.

Fixes gh-11410
2017-12-22 12:15:12 -08:00
Phillip Webb
1ea921bfdd Migrate to OAuth2Client to use PropertyMapper
See gh-9018
2017-12-22 09:55:21 -08:00
Phillip Webb
ba86b68484 Polish 2017-12-22 09:48:30 -08:00
Phillip Webb
6eabe8235c Add optional javax.money dependency
Add an optional dependency to `javax.money` to Eclipse errors in
`WebConversionService`.

See gh-5523
See gh-11402
2017-12-22 09:48:29 -08:00
dreis2211
00d12c5b2d Align 'behavior' spelling to style guide
Closes gh-11394
2017-12-22 18:15:19 +01:00
Christoph Dreis
1a7fd6c359 Fix typo
Closes gh-11388
2017-12-22 18:12:06 +01:00
Brian Clozel
2fa0539e7f Support date conversion format for java.time types
Prior to this change, the Spring MVC auto-configuration would add a new
formatter to convert `java.util.Date` to/from `String` using the
configured configuration property `spring.mvc.date-format`.

This commit adds a new `WebConversionService` class that registers
date formatters with a custom date format, or register the default ones
if no custom configuration is provided.
This avoids duplicating equivalent formatters in the registry.

With this change, date types from `java.util`, `org.joda.time` and
`java.time` are now all supported.

This commit also replicates this feature for WebFlux applications by
adding a new `spring.webflux.date-format` configuration property.

Closes gh-5523
Closes gh-11402
2017-12-22 16:07:33 +01:00
Madhura Bhave
ec26488ff1 Allow encoding default password in reactive user details
See gh-10963
2017-12-20 10:29:20 -08:00
Madhura Bhave
1b93f84912 Allow encoded password for default user
If raw password is provided, add {noop} prefix.
If prefix is present or PasswordEncoder bean is provided,
use the password as is.

Closes gh-10963
2017-12-18 14:34:02 -08:00
Phillip Webb
5e9cfea5a8 Migrate to auto-configurations to PropertyMapper
Update auto-configuration classes that have extensive property mapping
code to make use of the new `PropertyMapper` utility.

Fixes gh-9018
2017-12-15 18:32:07 -08:00
Phillip Webb
241a7086c0 Add PropertyMapper utility class
Add a utility class that can help when mapping values from
`@ConfigurationProperties` to a third-party class.

See gh-9018
2017-12-15 18:32:06 -08:00
Phillip Webb
befdbaaaa9 Polish 2017-12-15 14:57:25 -08:00
Stephane Nicoll
b7435016fb Improve Couchbase health indicator
This commit improve the couchbase health indicator to list the available
nodes. Doing so improves the reliability of the indicator as accessing
the bucket forces a remote call and better detect the cases where the
broker is down.

Closes gh-7369
2017-12-15 18:58:53 +01:00
Stephane Nicoll
2ed162a0be Fix outdated references to server.context-path
Closes gh-11358
2017-12-15 10:24:14 +01:00
Stephane Nicoll
7566a197b0 Fix type for spring.data.cassandra.contact-points
Closes gh-11354
2017-12-15 10:13:40 +01:00