Commit Graph

1573 Commits (eeed3a841cbe2de0b37ae118ea4fae55f5ca5598)

Author SHA1 Message Date
Madhura Bhave 67068fc83d Ignore unresolvable nested placeholders
The NamePatternEnvironmentFilter used to throw an exception if
placeholders in property values could not be resolved.

Fixes gh-8510
8 years ago
Phillip Webb 2136a39004 Fix checkstyle errors 8 years ago
Phillip Webb d8f827d224 Cleanup and format code 8 years ago
Phillip Webb 425dbc3e52 Update copyright header for edited files 8 years ago
Phillip Webb 2a592103f0 Polish formatting 8 years ago
Phillip Webb 91a7bf92e6 Merge branch '1.5.x' 8 years ago
Phillip Webb fedd7b9506 Polish 8 years ago
Spring Buildmaster d23fa24340 Next Development Version 8 years ago
Spring Buildmaster 2a83e80a9b Next Development Version 8 years ago
Madhura Bhave 8f26dc09b7 Merge branch '1.5.x' 8 years ago
Madhura Bhave d4b52a3538 Expose Health details if user has authority
If the Princial is a Spring Security Authentication object and the
request doesn't have the right roles, check the authorities.

Fixes gh-8471
8 years ago
Stephane Nicoll cb40ea485b Merge branch '1.5.x' 8 years ago
Stephane Nicoll 5cc569fc91 Improve execution speed of `CacheAutoConfigurationTests`
As of Hazelcast 3.7, the bootstrap is pretty slow by default due to the
networking discovery. This commit disables both TCP/IP and multicast
discoveries.
8 years ago
Phillip Webb 58ac67eb27 Merge branch '1.5.x' 8 years ago
Phillip Webb 3ee7dae09b Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb f1012c104a Polish 8 years ago
Phillip Webb c06a9771c2 Support list based role properties
Update `HealthMvcEndpoint` to respect `ManagementServerProperties`
roles. Prior to this commit the `HealthMvcEndpoint` directly loaded
roles rather than using bound properties. This meant that list values
from yaml were not respected.

Fixes gh-8314
8 years ago
Madhura Bhave 94a14dbcd8 Merge branch '1.5.x' 8 years ago
Madhura Bhave 031c9bf191 Validate authorities in MvcSecurityInterceptor
If Spring Security is on the classpath and `isUserInRole` returns false,
check if user has the authority to access the actuator endpoints.

Fixes gh-8255
8 years ago
Madhura Bhave e5e1f24d1f Revert "Skip MvcSecurityInterceptor if Spring Security present"
Instead of entirely skipping the interceptor, we will be additionally
checking for authorities.
8 years ago
Madhura Bhave ad5cb8a3cd Skip MvcSecurityInterceptor if Spring Security present
If Spring Security is on the classpath, the role check can be done
as part of the ManagementWebSecurityConfigurerAdapter.

Fixes gh-8255
8 years ago
Phillip Webb a4bcd20b64 Merge branch '1.5.x' 8 years ago
Phillip Webb ca1540cefe Update header copyright for changed files 8 years ago
Phillip Webb 5867cd6175 Polish 8 years ago
Phillip Webb 47fd5f4fac Merge branch '1.4.x' into 1.5.x 8 years ago
Phillip Webb 47b00c086c Polish 8 years ago
Andy Wilkinson 3164330139 Correct HAL Browser location to reflect version of web jar
See gh-8382
8 years ago
Stephane Nicoll 3c956441b5 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 121ab0a71e Merge branch '1.4.x' into 1.5.x 8 years ago
Vedran Pavic 1c8f1c709c Fix audit events related documentation
Closes gh-8319
8 years ago
Brian Clozel a5bdbd0dc2 Introduce EmbeddedWebServerInitializedEvent
This commit adds `EmbeddedWebServerInitializedEvent`, which holds the
`EmbeddedWebServer` information when the application context starts.
The `EmbeddedServletContainerInitializedEvent` now inherits from that
type and holds additional information, the
`EmbeddedWebApplicationContext`.

Closes gh-8208
8 years ago
Andy Wilkinson 54b95973bb Merge branch '1.5.x' 8 years ago
Andy Wilkinson e2a12e77b7 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson bbe9394228 Tests that lists of lists are sanitized correctly
See gh-8263
8 years ago
Johnny Lim 88afc43d44 Ensure that entries in a list of lists are not lost during sanitization
Closes gh-8263
See gh-8197
8 years ago
Madhura Bhave ffd35aaf5f Merge branch '1.5.x' 8 years ago
Madhura Bhave 77e5c585f4 Validate kid in Cloud Foundry token header
Instead of validating the signature against all the public keys,
we can validate it only against the public key with the kid that
matches the one in the token header.

Closes gh-8126
8 years ago
Andy Wilkinson 16b7bf7f73 Merge branch '1.5.x' 8 years ago
Andy Wilkinson df08863641 Make ServletRegistrationBean and FilterRegistration bean generic
Closes gh-7666
8 years ago
Andy Wilkinson 1efa700713 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 25982ecf69 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 04c8b912ee Fall back to standard LiveBeansView behaviour when MBean is in use
Closes gh-8146
8 years ago
Andy Wilkinson a19ad3211b Merge branch '1.5.x' 8 years ago
Andy Wilkinson d02a9c1058 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson f27bb39af9 Sanitize configuration properties that are nested beneath a List
Closes gh-8197
8 years ago
Brian Clozel aeef41c977 Separate container customization from ServerProperties
This commit creates a separate
`ServerPropertiesServletContainerCustomizer` that holds the servlet
container customization code, separating that concern from the server
configuration keys.

See gh-8066
8 years ago
Brian Clozel 12d883f6b9 Introduce "server.servlet" configuration prefix
This commit refactors the `ServerProperties` property keys and
introduces a separate "server.servlet" namespace to isolate
servlet-specific properties from the rest.

Closes gh-8066
8 years ago
Stephane Nicoll f41801ee8c Narrow down ConditionalOnWebApplication
Use the new `type` attribute of `@ConditionalOnWebApplication` for the
configurations that have a hard dependency on the Servlet/MVC API.

See gh-8118
8 years ago
Brian Clozel 8619d6a229 Rename EmbeddedServletContainer -> EmbeddedWebServer
This contract is not specific to servlet containers and should be
reused by all web server implementations (including reactive variants).

Fixes gh-8208
8 years ago
Stephane Nicoll 6af6e8e31b Remove auto-configuration for ServerProperties
This commit removes `ServerProperties` and `ManagementServerProperties`
auto-configurations. Those properties objects are now created using
`@EnableConfigurationProperties` only.

Closes gh-8108
8 years ago
Stephane Nicoll cfdc75d384 Merge branch '1.5.x' 8 years ago
Johnny Lim 0adab8a2be Use logical 'and' instead of bitwise 'and'
Closes gh-8198
8 years ago
Stephane Nicoll fb19b36595 Merge branch '1.5.x' 8 years ago
Stephane Nicoll dc75f13754 Remove deprecated metadata for spring.pidfile 8 years ago
Stephane Nicoll 3d1f8aa8d7 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll a30461c5c7 Polish pid metadata
This commit moves the `spring.pid.*` metadata to the relevant project. It
also updates the doc to refer to the new `ApplicationPidFileWriter`
rather than the one in its deprecatred form.

Closes gh-8196
8 years ago
Tommy Ludwig 653366d664 Remove HikariCP-java6 dependency management
Dependency management for the `HikariCP-java6` dependency is no longer
needed since Java 6 is no longer supported by Spring Boot.

The HikariDriverConfigurationFailureAnalyzer has been updated with the
current message thrown by HikariCP in this failure scenario.

Closes gh-8147
8 years ago
Phillip Webb 36c1db0223 Merge branch '1.5.x' 8 years ago
Phillip Webb 21234b36de Ensure `JmxEndpoint` beans get context object IDs
Update `EndpointMBeanExporter` to ensure that `JmxEndpoint` as well
as regular `Endpoint` beans are considered when searching the parent
context.

Prior to this commit if the same `JmxEndpoint` was registered in the
both the child and parent context then the `context=` element of the
name wasn't added.

Fixes gh-8152
8 years ago
Brian Clozel 7f39d5a865 Remove usage of Assert.notNull(Object)
This commit updates the Spring Boot codebase to adapt to the removal of
`Assert.notNull(Object)` in SPR-15196.

See gh-8140
8 years ago
Andy Wilkinson 95f659f4f9 Add new WebApplicationType enum to pave the way for Web Flux support
Closes gh-8077
8 years ago
Spring Buildmaster 5c12500366 Next Development Version 8 years ago
Spring Buildmaster a2696bf873 Next Development Version 8 years ago
Andy Wilkinson 31b0e81765 Add @FunctionalInterface to remaining public and protected interfaces
See gh-6857
8 years ago
Eddú Meléndez 3d52c86a21 Annotate interfaces with @FunctionaInterface
Closes gh-6857
8 years ago
Andy Wilkinson 6d70c061de Merge branch '1.5.x' 8 years ago
Andy Wilkinson 180ab2da8b Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson f3b9b14b8e Order ManagementContextConfiguration classes without loading them
Previously, ManagementContextConfiguration classes were loaded to
allow them to be ordered based on either @Order or implementing
Ordered. This had the unwanted side-effect of possibly logging
unwanted INFO messages if the reflection-based annotation
introspection failed. One cause of this was @ConditionalOnClass when
the referenced class was not on the classpath.

This commit uses the ASM-based annotation metadata reading to
determine the order of a management context configuration class based
on the @Order annotation. The classes are then sorted using a standard
OrderComparator. Note that Ordering via implemented Ordered is not
supported as it cannot be determine without loading the class.
8 years ago
Spring Buildmaster ed1ce140c0 Next Development Version 8 years ago
Stephane Nicoll 1df3fb6ecb Merge branch '1.5.x' 8 years ago
Stephane Nicoll b575be339e Fix endpoint id
See gh-7579
8 years ago
Andy Wilkinson 4993f32da8 Merge branch '1.5.x' 8 years ago
Andy Wilkinson f823599d1f Replace @PostConstruct validation with setter validation
Closes gh-7579
8 years ago
Stephane Nicoll 661fd848eb Merge branch '1.5.x' 8 years ago
dreis d58f38f6f6 Use String.replace() with single char if possible
See gh-8089
8 years ago
Stephane Nicoll 551bfb2c60 Polish contribution
Closes gh-8103
8 years ago
Johnny Lim 32f9e90de5 Replace 'String.length() == 0' with 'String.isEmpty()'
See gh-8103
8 years ago
Dave Syer 50c1e363ad Merge remote-tracking branch 'origin/1.5.x' 8 years ago
Dave Syer 98a4c72c50 Clarify PublicMetrics (uniqueness of metric names)
See gh-6404
8 years ago
Stephane Nicoll d67ce78e8b Merge branch '1.5.x' 8 years ago
Johnny Lim e0de28a1f7 Polish
Closes gh-8076
8 years ago
Phillip Webb 8ffaa54e74 Merge branch '1.5.x' 8 years ago
Madhura Bhave ca435512c0 Introduce spring-boot-autoconfigure-processor
Add an annotation processor that generates properties files for certain
auto-configuration class annotations. Currently attribute values from
@AutoConfigureOrder, @AutoConfigureBefore, @AutoConfigureAfter and
@ConditionalOnClass annotations are stored.

The properties file will allow optimizations to be added in the
`spring-boot-autoconfigure` project. Primarily by removing the need
to ASM parse as many `.class` files.

See gh-7573
8 years ago
Phillip Webb 2c89d9918f Relocate AutoConfigurations from root package
Move PropertyPlaceholder and MessageSource auto-configuration from the
root package to the `context` subpackage.

Fixes gh-8071
8 years ago
Phillip Webb 3893383cbe Merge branch '1.5.x' 8 years ago
Phillip Webb 5703fb1515 Polish 8 years ago
Andy Wilkinson d4c4bc35fd Start building against Spring Data Kay snapshots
See gh-7461
8 years ago
Andy Wilkinson 65fe405f19 Merge branch '1.5.x' 8 years ago
Andy Wilkinson b900a3efc8 Update Actuator endpoints to use custom media type
Previously, the actuator's endpoints produced application/json and,
where appropriate, also consumed application/json. Without a custom,
versioned media type, it's impossible for us to make changes to the
endpoints without breaking clients.

This commit introduces a new media type,
application/spring-boot.actuator.v1+json, that is now produced by
default with application/json also being produced if requested.
Endpoints that consume JSON will now also accept content the uses
the new media type in addition to application/json.

Closes gh-7967
8 years ago
Phillip Webb 89f7ec054f Merge branch '1.5.x' 8 years ago
Phillip Webb f3cd0ad22c Polish 8 years ago
Madhura Bhave e73c6bb2e2 Exclude authorization header from trace by default
Closes gh-7974
8 years ago
Andy Wilkinson e7ed7efb56 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 3e88c366ec Polish "Avoid property name collisions when serializing AuditEvent to JSON"
See gh-7990
8 years ago
Johannes Edmeier fcf36ed091 Avoid property name collisions when serializing AuditEvent to JSON
Previously, in case the data for the audit event contained an entry
with the key "type", the member `type` from the AuditEvent would be
overwritten when rendering to JSON due to the use of @JsonAnyGetter on
the data property.

This commit removes @JsonAnyGetter so that the data map is rendered as
a separate property in the JSON.

Closes gh-7990
8 years ago
Stephane Nicoll c54070d142 Merge branch '1.5.x' 8 years ago
Stephane Nicoll c41ff17dd7 Provide relevant default values for Enums
This commits adds manual metadata for enums that have a default value
since the annotation processor is not able to detect that yet.

Closes gh-7890
8 years ago
Phillip Webb 5502fa2936 Merge branch '1.5.x' 8 years ago
Phillip Webb f42ebe428c Remove JSR-330 configuration annotations
Replace JSR-330 validation annotations from all internal
`@ConfigurationProperties` classes with standard Asserts.

Prior to this commit validation of our own configuration properties
would only occur when the user happens to have compliant JSR-330
implementation on their classpath.

See gh-7579
8 years ago
Phillip Webb 0a6456a748 Always use `prefix` config annotation attribute
Update use of `@ConfigurationProperties` to prefer the more explicit
`prefix` attribute, rather than `value`.

See gh-7579
8 years ago