Commit Graph

2623 Commits

Author SHA1 Message Date
Christian Dupuis 2f28a1017c Polish and re-add author name 2014-07-18 12:37:02 +02:00
Stephane Nicoll 2be6b3e419 Flexible registration of additional PublicMetrics
This commit permits the use of several PublicMetrics instances by
default. Previously, only one PublicMetrics service could be specified
and a user configuration would remove all the defaulting.

VanillaPublicMetrics now takes a collection of PublicMetrics and
invokes them in sequence to build the final collection of metrics.
The system-related metrics have been moved to SystemPublicMetrics and
are registered by default.

Also updated the documentation to mention this feature and how it
could be fully overridden.

Fixes gh-1094
2014-07-17 16:19:05 +02:00
Christian Dupuis 99971a6578 Fix HTTP status code mapping in HealthMvcEndpoint
refs #1264
2014-07-17 16:12:06 +02:00
Andy Wilkinson 3145edff3a Upgrade to Spring 4.1.0 and use Yaml support that migrated from Boot
Closes #813
2014-07-17 14:39:18 +01:00
Dave Syer 890fc71967 Merge branch '1.1.x' 2014-07-17 14:21:38 +01:00
Dave Syer 4a33ab5577 Make sure ErrorPageFilter is only applied once per request
Fixes gh-1257
2014-07-17 14:20:29 +01:00
Dave Syer 8cb90a5645 Merge branch '1.1.x' 2014-07-17 12:33:22 +01:00
Dave Syer 0c52817c88 Ensure order is preserved in Rabbit addresses
Using StringUtils.commaDelimitedListToSet() does not preserve order (why?),
so we have to use commaDelimitedListToStringArray().

Fixes gh-1262
2014-07-17 12:31:37 +01:00
Stephane Nicoll 120ad56a5c Replace @ConditionalOnExpression
This commit replaces @ConditionalOnExpression instances that are
checking for a specific value to @ConditionalOnPropertyValue
2014-07-17 11:50:13 +02:00
Stephane Nicoll 270809783c Merge @ConditionalOnPropertyValue
This commit merges the features of @ConditionalOnPropertyValue
to the existing @ConditionalOnProperty.

The "match" attribute provides the value to match against. By default,
the value should not be equal to "false" which is the existing default
of @ConditionalOnProperty. "defaultMatch" specifies if the value
should be present. The default matches also the existing behavior of
@ConditionalOnProperty.

Fixes gh-1000
2014-07-17 11:11:42 +02:00
Dave Syer fc9b160a72 Merge branch '1.1.x' 2014-07-17 09:04:44 +01:00
Dave Syer 8853c7c352 Ensure properties that are not enumerable can be resolved from placeholders
Before this change a property whose key was in a non-enumerable property source would
not resolve placeholders, leading to ${style} values in @ConfigurationProperties beans
even if the placeholders ere resolvable.
2014-07-17 09:02:04 +01:00
Stephane Nicoll d7d77f3d06 Add OnPropertyValueCondition annotation
This commit adds a new conditional annotation that checks if a
property has a given value. This allows to replace constructs
such as

@ConditionalOnExpression("'${app.myProperty:foo}' == 'foo'")

to

@ConditionalOnPropertyValue(property="app.myProperty",
        value="foo", defaultMatch=true)

Which is definitely more verbose but has the following advantages:

1. Works by default if the actual property in the environment is
   a bit different (i.e. my-property)
2. Works if the value of the property has a diferent case (FoO or
   FOO would match)
3. Gives a precise reporting in the auto configuration report

The defaultMatch flag is meant to mention that the condition should
also match if the value is not set; the auto-config report would
also have an explicit report about it.

Fixes gh-1000
2014-07-16 16:00:43 +02:00
Andy Wilkinson db2b20879d Merge branch '1.1.x' 2014-07-15 14:38:02 +01:00
Andy Wilkinson 672d713f99 Add dependency management for spock-spring and document its use
Closes #1234
2014-07-15 14:36:56 +01:00
Andy Wilkinson 41ca0f604a Merge branch '1.1.x' 2014-07-15 14:23:17 +01:00
Andy Wilkinson 847627810a Merge branch '1.1.x' 2014-07-15 13:54:34 +01:00
Andy Wilkinson 124418f83f Upgrade to HikariCP 1.4.0
Closes #1220
2014-07-15 13:53:28 +01:00
Andy Wilkinson 6cac7926d9 Upgrade to Groovy 2.3.4
Closes #1224
2014-07-15 13:52:40 +01:00
Ilayaperumal Gopinathan 341412d5b5 Fix LoggingApplicationListener
- If `logging.config` is set and could open/read the resource
then, return.
  - Currently, it logs warning though the resource is successfully
read.
2014-07-15 09:32:09 +01:00
Lukasz Kryger 51196e01d5 Dependencies for json-path in BOM 2014-07-15 09:31:29 +01:00
Stephane Nicoll bf83e45b34 Remove duplicate dependencies 2014-07-15 07:11:31 +02:00
Stephane Nicoll 621b33f7ad Missing setter on spring.batch.job.names property
Relates to gh-1249
2014-07-14 11:36:18 +02:00
Stephane Nicoll 8f886e22ce Use @ConfigurationProperties for Thymeleaf
Add missing properties to complement 6568495

Fixes gh-1250
2014-07-14 11:18:36 +02:00
Stephane Nicoll 65684957ea Use @ConfigurationProperties for Thymeleaf
Fixes gh-1250
2014-07-14 11:08:16 +02:00
Stephane Nicoll 90cf722365 Use @ConfigurationProperties for Spring Batch
Fixes gh-1249
2014-07-14 11:04:21 +02:00
Stephane Nicoll 20e08494ae Fix typo 2014-07-11 16:02:08 +02:00
Stephane Nicoll d01154c212 Move Spring Social and Spring Mobile configuration
This commit uses dedicated Properties classes instead of accessing
the raw environment for Spring Social and Spring Mobile. This
improves the readability and the discovery of such properties.

Fixes gh-1238
2014-07-11 11:02:00 +02:00
Stephane Nicoll 249e09d9bc Switch master to 1.2.0.BUILD-SNAPSHOT 2014-07-11 10:44:05 +02:00
Dave Syer 81a4548561 Ensure embedded containers actually stop if there is an error on startup
Both embedded containers need to be checked after starting to ensure that they
are actually running. With Jetty it's just a question of catching an exception
but with Tomcat it's harder (the current solution involves duplicating some
code from initialize() into start() essentially checking the lifecycle state).

Also adjusted the log levels to prevent noise at WARN level by default when
this happens (since the exception is logged and rethrown anyway).

There is still the issue of whether to fail the build in Maven or Gradle
(separate issue really).

Fixes gh-1232
2014-07-10 15:14:25 +01:00
Dave Syer ede385d1b6 Modify @Condition for detecting existing message bundle resource
The problem with the old code is that it worces a ResourceBundle to
initialize with the default encoding (and that is then cached in the
JDK) during @Condition evaluation (so before the encoding is known).

Includes test for swedish messages

Fixes gh-1228
2014-07-10 12:42:02 +01:00
Stephane Nicoll f7a5ee3bcc Remove duplicate key 2014-07-09 10:03:50 +02:00
Phillip Webb 3c7d825658 Fixup version numbers following release 2014-07-08 03:07:03 -07:00
Spring Buildmaster 40327e1ae6 Next development version 2014-07-08 02:33:36 -07:00
Phillip Webb 8265cf06b7 Merge pull request #1209 from garyrussell/gh-1206
* gh-1206:
  Restore AMQP vHost leading `/` support
2014-07-08 01:51:33 -07:00
Gary Russell ce0cbe05bf Restore AMQP vHost leading / support
Update RabbitProperties since vHosts have no restrictions requiring a
leading slash and can have any number of leading slashes.

Fixes gh-1206
2014-07-08 01:33:47 -07:00
Phillip Webb fd3e5eceeb Polish 2014-07-08 01:05:56 -07:00
Phillip Webb 4ede9cd1be Support websockets with Tomcat 8.0.8
Fixes gh-1210
2014-07-08 00:59:34 -07:00
Phillip Webb 54f1b29db5 Upgrade to Spring Framework 4.0.6
Fixes gh-1217
2014-07-08 00:41:00 -07:00
Phillip Webb 31014d86a4 Clarify resource filtering documentation
Fixes gh-1208
2014-07-08 00:17:00 -07:00
Andy Wilkinson 6a0eb90007 Upgrade to Spring Batch 3.0.1
Due to a mistake in Spring Batch 3.0.0 it has been necessary to
introduce a breaking API change (the addition of
BatchConfigurer.getJobExplorer()) in the 3.0.1 release. This commit
updates Boot to use 3.0.1 and modifies the Batch auto-configuration
and associated tests to implement the new method.
2014-07-08 00:03:30 -07:00
Phillip Webb f7b7b1c8cb Polish embedded tomcat classes
Extract some methods to aid readability.
2014-07-07 23:40:36 -07:00
Phillip Webb aed243fb88 Only add Tomcat connectors in start() method
Update TomcatEmbeddedServletContainer so that Connectors are removed
during initialization and re-added when the start() method is called.

This prevent protocol handlers from being bound then immediately
unbound. It also ensure that any additional connectors that may have
been added don't accidentally start to accept traffic (which could cause
potential deadlock issues).

Fixes gh-1212
2014-07-07 23:15:52 -07:00
Phillip Webb 7455e4e86f Restore support for files gradle dependencies
Allow `compile files("$rootDir/vendor/foo.jar")` style declarations
with the jars repackaged from the gradle plugin.

Fixes gh-1215
2014-07-07 13:24:33 -07:00
Dave Syer aa38d33404 Support for setting credentials and vhost in rabbit addresses
User can now add credentials, vhost and protocol prefix (amqp://)
to any or all of the addresses, extending the format beyond that accepted
bu the rabbitmq client, but making it cloud friendly. Only one of
the addresses needs those properties and all are optional. Port
also defaults to 5672 in an address.
2014-07-07 19:56:50 +01:00
Andy Wilkinson 148e32d09a Document need to use @ContextConfiguration with Spock
Closes #1167
2014-07-07 13:41:13 +01:00
Dave Syer 3978700b4a More specific pointcut to be safe 2014-07-07 08:24:34 +01:00
Andy Wilkinson 1ffdc90f04 Further enhancements to Gradle repackaging logic
This commit refines the changes made under 4be688aa. 4be688aa made the
default jar task a special case which broke repackaging of the archive
produced by the default war task.

This commit refines RepackageTask’s logic so that, when it’s enabled,
it will repackage a jar task’s archive if:

- The jar task is equal to RepackageTask.withJarTask
- The name of the jar task is equal to RepackageTask.withJarTask
- RepackageTask.withJarTask is null, the jar task is not referenced
  by another RepackageTask’s withJarTask, and the jar task has an
  empty classifier

The last of these three is the default case and ensures the, when the
Spring Boot plugin is applied, default jar and war artifacts are
repackaged. The classifier check is required to prevent default source
and javadoc artifacts from being repackaged.

Fixes #1204
2014-07-03 13:33:32 +01:00
Andy Wilkinson fdc3d70cd5 Ensure that spring-boot-starter-ws pulls in the right version of Spring
Prior to this commit, when used with Gradle, spring-boot-starter-ws was
pulling in the versions of spring-jms, spring-oxm, and spring-tx that
Spring WS depends upon, rather than using the Boot’s Spring version.
It’s ok at the moment as both Boot and Spring WS depend on Spring 4.0.5
but will cause problems if we upgrade to 4.0.6 before Spring WS does.

This commit adds explicit dependencies on spring-jms and spring-oxm so
that Gradle pulls in the correct version (as long as a transitive
dependency doesn’t pull in a version that’s greater than the version
Boot’s using).
2014-07-03 12:08:46 +01:00
Andy Wilkinson 4be688aa78 Fix Gradle repackaging so it is only performed on the desired jars
The logic that determined whether or not the repackaging action should
be applied to a particular jar task was broken and caused problems
when a custom RepackageTask was used in a project's build.

This commit updates the logic so that repackaging will be applied:

 - To the default jar task if RepackageTask.withJarTask is null
 - To a jar task if it is equal to RepackageTask.withJarTask
 - To a jar task if its name is equal to RepackageTask.withJarTask

Repackaging is not applied if:

 - RepackageTask.enabled is false

Numerous integration tests have been added to verify the repackaging
behaviour.

Fixes #1204
2014-07-03 11:42:11 +01:00