Commit Graph

10579 Commits (1f164906dc2dcb91fb0183da367c6b4175b2bd02)
 

Author SHA1 Message Date
Stephane Nicoll 1f164906dc Merge branch '1.5.x' 8 years ago
Stephane Nicoll 4a60de78ff Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 4efa4590f8 Review doc on advanced datasource customization
Closes gh-7652
8 years ago
Phillip Webb 8ffaa54e74 Merge branch '1.5.x' 8 years ago
Phillip Webb b0e06c30a0 Polish 8 years ago
Phillip Webb de50cfa21e Make OnClassCondition an AutoConfigurationImportFilter
Update OnClassCondition to implement AutoConfigurationImportFilter so
that auto-configuration candidates can be filtered early. The
optimization helps to improve application startup time by reducing
the number of classes that are loaded.

See gh-7573
8 years ago
Phillip Webb 20a20b7711 Add AutoConfigurationImportFilter support
Add `AutoConfigurationImportFilter` strategy interface which can be used
to filter auto-configuration candidates before they are loaded.

See gh-7573
8 years ago
Phillip Webb 02641a8207 Optimize AutoConfigurationSorter
Optimize `AutoConfigurationSorter` by used properties generated by the
annotation processor whenever possible. The removes the need for each
candidate class to be ASM parsed just to access the order annotations.

See gh-7573
8 years ago
Phillip Webb 1cbda9bd60 Add AutoConfigurationMetadata abstraction
Add AutoConfigurationMetadata interface and a an internal loader that
allows easy access to data written by `spring-boot-configure-processor`.

See gh-7573
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 ccf964eb9a Optimize OnEnabledResourceChainCondition
Optimize OnEnabledResourceChainCondition by removing the DataBinder.
Properties are now read directly from the Environment.

See gh-7573
8 years ago
Phillip Webb f8ded6de63 Don't use DataBinder to work out excludes
Update `AutoConfigurationImportSelector` so that exclude properties
are loaded without invoking a `DataBinder`. This optimization helps
to improve application startup time.

See gh-7573
8 years ago
Phillip Webb 49fc727706 Lazy initialize JacksonJsonParser ObjectMapper
Update `JacksonJsonParser` to that the `ObjectMapper` is only
initialized on first use. This performance optimization helps with
startup times if nothing uses the parser.

Fixes gh-8074
8 years ago
Phillip Webb cfd5a73b64 Don't call ReflectionUtils do deduce bean type
Update `OnBeanCondition` to no longer call `ReflectionUtils` when
deducing the bean method return type. Since Spring Framework 4.2
the return type has been directly available from `MethodMetadata`.

See gh-7573
8 years ago
Phillip Webb 996afafac6 Optimize OnClassCondition isPresent check
Update `OnClassCondition` to use its own `isPresent` rather than using
`ClassUtils.isPresent`. Using our own implementation saves a few cycles
since we never need to check for native types, and we don't support
nested class references specified in the non `$` notation.

See gh-7573
8 years ago
Phillip Webb 9650668291 Remove dependency from `root` to `condition`
Remove the slightly unusual dependency from the root autoconfigure
pacakge to `condition`. Prior to this commit the link was required in
ordere to populate the `ConditionEvaluationReport`. We now introduce
a `AutoConfigurationImportListener` strategy that allows anyone to
listen for AutoConfigurationImportEvents. The listener implementation
is now used to update the ConditionEvaluationReport.

Fixes gh-8073
8 years ago
Phillip Webb b225b7f33a Rename EnableAutoConfigurationImportSelector
Rename EnableAutoConfigurationImportSelector to the more general
AutoConfigurationImportSelector since it's now used for more than
just the enable annotation.

The existing EnableAutoConfigurationImportSelector class remains in
a deprecated form so that it can be made package-private again in
Spring Boot 2.0.

Fixes gh-8072
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
Stephane Nicoll d1727f25e2 Merge branch '1.5.x' 8 years ago
Stephane Nicoll f36b051071 Deprecate exceptionIfInvalid for yaml processing
See gh-8027
8 years ago
Stephane Nicoll 0286128b28 Deprecate exceptionIfInvalid
This commit deprecates the `exceptionIfInvalid` feature as we have now a
way to select the `@ConfigurationProperties` object to validate (i.e. add
`@Validated` on them).

Closes gh-8027
8 years ago
Andy Wilkinson d7ea15a95d Merge branch '1.5.x' 8 years ago
Andy Wilkinson 393cfe505e Allow spring.profiles.include to be used anywhere to add active profiles
Previously, spring.profiles.include was only considered when it was
used in a configuration file. It was ignored in any other property
source.

This commit updates ConfigFileApplicationListener so that
spring.profiles.include can be used in any property source to add to
the profiles that have been declared active via
spring.profiles.active.

Closes gh-7668
8 years ago
Andy Wilkinson 863d505994 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 07d9c3fef6 Rename classes and package in new OAuth2 and Actuator sample
Closes gh-8058
8 years ago
Andy Wilkinson a7ee2b8e0e Merge branch '1.5.x' 8 years ago
Andy Wilkinson 0067082eac Document a warning about embedded Tomcat and tmpwatch on CentOS
Closes gh-5009
8 years ago
Andy Wilkinson c543101dc1 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 9a79d32f4c Polishing 8 years ago
Andy Wilkinson 1f183bd320 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 68fdd49a0b Document payload types of messages sent to metricsChannel
Closes gh-7790
8 years ago
Andy Wilkinson 79bf7d473c Merge branch '1.5.x' 8 years ago
Andy Wilkinson c86b844477 Remove @Component from ResourceServerFilterChainOrderProcessor
Closes gh-8050
8 years ago
Stephane Nicoll b05df504ef Merge branch '1.5.x' 8 years ago
Stephane Nicoll a15cb26278 Merge branch '1.4.x' into 1.5.x 8 years ago
Stephane Nicoll 4760a1a6e1 Merge pull request #8057 from izeye:fix-test-20170122
* pr/8057:
  Fix entry in broken-initialization.factories
8 years ago
Johnny Lim 752b8bd650 Fix entry in broken-initialization.factories
Closes gh-8057
8 years ago
Stephane Nicoll 09eb12c9a3 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 012f3d3509 Upgrade to Spring LDAP 2.3.1.RELEASE
Closes gh-8055
8 years ago
Andy Wilkinson d4c4bc35fd Start building against Spring Data Kay snapshots
See gh-7461
8 years ago
Andy Wilkinson 0acfee44c5 Start building against Spring Session 2.0 snapshots
See gh-8049
8 years ago
Andy Wilkinson 6d14a9dc78 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 080ff49c8d Prevent AspectJ from loading aspects too early
Previously, AspectJ would find META-INF/aop.xml almost as soon as
the jar was launched, and before LaunchedURLClassLoader had been
created. This meant that AspectJ would attempt to load aspects listed
in META-INF/aop.xml but that were package in BOOT-INF/classes and,
therefore, could not be loaded.

This commit updates the Repackager so that a META-INF/aop.xml file
is moved into BOOT-INF/classes. This ensures that it isn't visible
to the app class loader so it won't be loaded to early. It will
now be loaded by LaunchedURLClassLoader which can also load the
compiled aspects that aop.xml references.

Closes gh-7587
8 years ago
Andy Wilkinson 258595e162 Merge branch '1.5.x' 8 years ago
Andy Wilkinson a30fe9d9ff Update ServerPropertiesTests to tolerate changes in Tomcat 8.5.11
Closes gh-7360
8 years ago
Andy Wilkinson fd677af868 Merge branch '1.5.x' 8 years ago
Andy Wilkinson b71baf2c38 Support @ContextHierarchy when using @SpringBootTest
Closes gh-8000
8 years ago
Andy Wilkinson eb4329fb39 Merge branch '1.5.x' 8 years ago