Commit Graph

1560 Commits

Author SHA1 Message Date
Juergen Hoeller b95e05db04 AspectJExpressionPointcut consistently resolves superinterface methods
Includes efficient check for same ClassLoader in ClassUtils.isVisible, efficient MethodMatchers check for IntroductionAwareMethodMatcher, and supertype method resolution in MethodMapTransactionAttributeSource.

Issue: SPR-16723
2018-04-14 15:10:05 +02:00
sdeleuze 97ee94f4ca Expose env and context in Kotlin beans DSL
This commit introduces a deferred initialization of the declared beans
in order to make it possible to access to the environment (and even
to the context for advanced use-cases) in the beans { } Kotlin DSL.

Issues: SPR-16269, SPR-16412
2018-04-12 11:31:37 +02:00
Juergen Hoeller 61c3db0869 MethodHandles.Lookup.defineClass for CGLIB class definition purposes
Spring's CGLIB fork is patched with local copies of affected files here, introducing the notion of a "contextClass" (e.g. the proxy superclass) which gets passed through to ReflectUtils.defineClass for delegating to MethodHandles.Lookup.defineClass eventually, against a privateLookupIn(contextClass) lookup context on JDK 9/10/11.

Issue: SPR-15859
2018-04-11 12:47:55 +02:00
Juergen Hoeller cdaa247861 Unwind _TestTypes to top-level public test classes in AOP test suite 2018-04-11 12:43:49 +02:00
Juergen Hoeller 6102715b8d Consistent treatment of proxy classes and interfaces for introspection
Issue: SPR-16675
Issue: SPR-16677
2018-04-03 02:42:41 +02:00
Juergen Hoeller cc379f1cc7 Polishing 2018-04-01 12:57:19 +02:00
Juergen Hoeller bc07a54075 Clear AnnotationUtils cache after context refresh (along with others)
Issue: SPR-16675
2018-03-31 23:08:30 +02:00
Juergen Hoeller 912c270f2b Polishing 2018-03-31 17:49:21 +02:00
Juergen Hoeller 4da27c2a73 Avoid unnecessary introspection on methods and meta-annotations
Issue: SPR-16667
2018-03-31 00:18:14 +02:00
Juergen Hoeller 78681c6369 JndiRmiServiceExporter still calls PortableRemoteObject when available
Issue: SPR-16670
2018-03-30 15:19:38 +02:00
Juergen Hoeller d553ddc5b3 Nullability refinements (based on IntelliJ IDEA 2018.1 introspection)
Issue: SPR-15756
2018-03-29 23:50:17 +02:00
igor-suhorukov e6020ed377 avoid unnecessary autoboxing 2018-03-28 23:48:12 +02:00
Stephane Nicoll d1a0b8d53f Clarify the format supported by @PropertySource
Issue: SPR-16563
2018-03-28 11:03:53 +02:00
igor-suhorukov 4aae6a6dda Use Map.forEach instead of manual Map.Entry iteration wherever possible SPR-16646 2018-03-28 01:09:03 +02:00
Juergen Hoeller e3d0ef6015 Use Map.forEach instead of manual Map.Entry iteration wherever possible
Issue: SPR-16646
2018-03-27 00:38:32 +02:00
Juergen Hoeller 8d5587fe4f Consistent thread-safe iteration in DefaultSingletonBeanRegistry
Issue: SPR-16620
2018-03-24 16:30:51 +01:00
Christoph Dreis d3a0a8e007 Use Collection.removeIf() where possible (#1747)
Use Collection.removeIf() where possible

Issue: SPR-16622
2018-03-22 11:36:11 +01:00
Juergen Hoeller 99399084a6 Consistent Future check (even if typically encountering RunnableFuture)
Issue: SPR-16607
2018-03-19 12:42:49 +01:00
Juergen Hoeller 3c1adf7f6a ThreadPoolTaskExecutor/Scheduler cancels remaining Futures on shutdown
Issue: SPR-16607
2018-03-19 01:45:22 +01:00
Juergen Hoeller 4fef1fe820 Polishing 2018-03-16 18:49:12 +01:00
Juergen Hoeller 914b2470dc Scope annotation in class hierarchies vs XML bean definition inheritance
Issue: SPR-16602
2018-03-16 18:49:00 +01:00
Juergen Hoeller c4e9ce8d0e Clarified repeatable PropertySource annotation vs use as meta-annotation
Issue: SPR-16592
2018-03-14 18:53:50 +01:00
Juergen Hoeller 3988dd9ebb Polishing 2018-03-14 17:24:58 +01:00
Stephane Nicoll cc12afdea2 Add support for deferred import selector group
This commit allows several DeferredImportSelector instances to be
grouped and managed in a centralized fashion. This typically allows
different instances to provide a consistent ordered set of imports to
apply.

Issue: SPR-16589
2018-03-13 16:52:26 -04:00
Juergen Hoeller 04a8f81710 Polishing 2018-03-12 20:42:03 +01:00
Juergen Hoeller 50e980c02f Validate declared annotations before deciding between reflection and ASM
Issue: SPR-16564
2018-03-12 13:40:26 +01:00
Stephane Nicoll fb7c4a3066 Polish 2018-03-11 10:26:41 +01:00
igor-suhorukov 6163f2d32f use more modern java API for empty collections 2018-03-08 21:41:57 +01:00
Juergen Hoeller 139dc1d373 Polishing (collapsed if checks, consistent downcasts, refined javadoc) 2018-03-08 18:11:57 +01:00
igor-suhorukov 0f7485b01d Polish: reorder the modifiers to comply with the Java Language Specification. 2018-03-08 17:57:47 +01:00
Sam Brannen 0f5a3e2647 Polish formatting in Groovy scripts 2018-03-07 16:09:04 +01:00
Sam Brannen df0b39e8ac Add missing packages to Groovy scripts 2018-03-07 16:09:03 +01:00
Juergen Hoeller f57fcdee3c Polishing 2018-03-07 15:49:58 +01:00
igor-suhorukov 129530f792 Polish
Closes gh-1715
2018-03-03 12:12:15 +01:00
igor-suhorukov ed936cbd89 Polish: Overriding methods should do more than simply call the same method in the super class 2018-03-02 00:06:27 +01:00
Juergen Hoeller 33cd160861 Upgrade to Reactor Bismuth SR7, Hibernate ORM 5.2.14, Common Annotations 1.3.2 2018-02-28 14:01:04 +01:00
igor-suhorukov 7bce04c06c Polish: combine catches block with same body 2018-02-27 12:51:28 +01:00
Juergen Hoeller c2d5ca9811 Proper nullable return declaration for AbstractValueAdaptingCache.lookup
Issue: SPR-15540
2018-02-26 13:05:12 +01:00
Juergen Hoeller 7d89de06e3 Enforce GMT timezone for testBindInstantFromJavaUtilDate
Issue: SPR-16534
2018-02-26 13:02:17 +01:00
igor-suhorukov c782075a13 Polish: Array designators "[]" should be on the type, not the variable 2018-02-25 13:14:20 +01:00
Juergen Hoeller 3531c104b0 Prefer Collections.addAll call with array over Set.addAll(Arrays.asList) 2018-02-25 00:21:39 +01:00
Juergen Hoeller a5cbf5fe24 Consistent use of Collection.toArray with zero-sized array argument
Includes consistent use of ClassUtils.toClassArray (as non-null variant)

Issue: SPR-16523
2018-02-22 11:29:46 +01:00
Juergen Hoeller d7cab23e6d Consistent use of StringUtils.toStringArray
(cherry picked from commit 6d11b40)
2018-02-16 20:49:17 +01:00
Juergen Hoeller 8d3264f680 Prefer List.sort(Comparator) over Collections.sort(List, Comparator) 2018-02-16 10:23:18 +01:00
Juergen Hoeller 3b810f3544 Consistent Class array vs vararg declarations (and related polishing) 2018-02-14 14:44:00 +01:00
igor-suhorukov 7826567df6 Polish: lamdbas containing only one statement should not nest this statement in a block 2018-02-14 01:22:01 +01:00
Juergen Hoeller 37609e4ede Object/FieldError exposes source object through unwrap/contains methods
Issue: SPR-16372
2018-02-13 17:58:31 +01:00
Juergen Hoeller d3cee45f30 Polishing 2018-02-13 13:15:29 +01:00
Juergen Hoeller d5cabca2f7 Internal adaptation to Deque semantics 2018-02-12 15:55:09 +01:00
igor-suhorukov 711b0f50f2 Polish: replace the synchronized class "Stack" by an unsynchronized one such as "Deque". 2018-02-11 21:15:46 +01:00
Juergen Hoeller d00e1c5e4f Polishing 2018-02-10 21:35:46 +01:00
Juergen Hoeller 55ee250659 Object/FieldError stores source object as transient (not serialized)
Issue: SPR-16372
2018-02-10 17:41:30 +01:00
igor-suhorukov 0ee505b73e Polish: assertion arguments should be passed in the correct order,
use assertNull instead of assertEquals(null, value),
declare delta as double value in assertEquals
2018-02-10 17:17:28 +01:00
igor-suhorukov d3a1d44864 Polish: Maps with keys that are enum values should be replaced with EnumMap 2018-02-10 12:09:33 +01:00
Juergen Hoeller 9bb7fcd997 Object/FieldError provides access to source object (exception/violation)
Issue: SPR-16372
2018-02-09 18:42:56 +01:00
Juergen Hoeller c8b860c4b8 Streamlined BeanFactory access within DefaultLifecycleProcessor 2018-02-09 13:31:31 +01:00
Stephane Nicoll 991eb4858e Update copyright header 2018-02-09 10:16:58 +01:00
igor-suhorukov c0b4b5787f Change this "try" to a try-with-resources
Closes gh-1671
2018-02-09 10:12:55 +01:00
igor-suhorukov e381514b07 Collection.isEmpty() should be used to test for emptiness
Closes gh-1670
2018-02-09 10:11:44 +01:00
Johnny Lim 5c0ddf3c69 Polishing 2018-02-07 10:59:10 +01:00
Juergen Hoeller 5c813a366b Consistent use of @throws instead of @exception 2018-02-05 22:51:51 +01:00
Juergen Hoeller 7f96827ade Polishing 2018-02-02 11:34:03 +01:00
Juergen Hoeller 4a1cc9ced7 Constructor-provided field values get recorded for failed binding result
Also, TypeMismatchExceptions get registered via BindingErrorProcessor.

Issue: SPR-16449
2018-02-02 11:33:56 +01:00
Juergen Hoeller 9c069f6cb1 Avoid String concatenation for not-null assertion in BeanProperty/DirectFieldBindingResult
Issue: SPR-16455
2018-02-02 11:33:39 +01:00
Juergen Hoeller 637e09f995 Polishing 2018-01-30 16:00:30 +01:00
Juergen Hoeller ef2e16912d Formatting support for java.time.Year and java.time.Month
Issue: SPR-16437
2018-01-30 15:54:47 +01:00
Juergen Hoeller 89d2bd954a Properly analyze Java 9 class cast messages for lambda event listeners
Issue: SPR-16435
2018-01-30 15:53:58 +01:00
Juergen Hoeller 0e734d83d5 @EnableAspectJAutoProxy: per application context, requires aspectjweaver
Issue: SPR-14753
Issue: SPR-15801
2018-01-26 10:38:43 +01:00
Juergen Hoeller 37ab8a700b Doc: no "useCodeAsDefaultMessage" for setValidationMessageSource
Issue: SPR-15986
2018-01-26 10:35:37 +01:00
Juergen Hoeller 13c735442c @Scheduled supports java.time.Duration format for its delay attributes
Issue: SPR-15455
2018-01-25 19:11:18 +01:00
Rossen Stoyanchev 97894a1c22 Improve logging dependencies for tests 2018-01-23 10:42:41 -05:00
Juergen Hoeller 9d0e62ef68 Javadoc format and related polishing 2018-01-22 11:43:21 +01:00
Juergen Hoeller 572c668726 Polishing 2018-01-19 21:30:37 +01:00
Johnny Lim d31767eab8 Fix an exception message in ScheduledAnnotationBeanPostProcessor
Closes gh-1636
2018-01-15 15:19:02 +01:00
Juergen Hoeller b160f93495 CacheProxyFactoryBean exposes all relevant CacheInterceptor callbacks
Issue: SPR-16295
2018-01-14 23:48:21 +01:00
Juergen Hoeller 06e6386dc9 CollectionUtils.lastElement for common Set/List extraction
Issue: SPR-16374
2018-01-12 18:23:52 +01:00
Juergen Hoeller 13a8f90e08 ScheduledAnnotationBeanPostProcessor properly deals with nested proxies
Issue: SPR-16196
2018-01-12 16:48:17 +01:00
Juergen Hoeller c8bdb3c602 Polishing 2018-01-09 22:20:22 +01:00
Masahiro Ide d9af4d6599 ResourceBundleMessageSource uses ConcurrentHashMaps instead of synchronization
Issue: https://jira.spring.io/browse/SPR-16235
2018-01-09 22:12:03 +01:00
Juergen Hoeller 4adc820714 Warning instead of error for non-present type filter class
Issue: SPR-16356
2018-01-08 13:41:23 +01:00
Juergen Hoeller d187cbce73 LoadTimeWeaver detection differentiates between WebSphere and Liberty
Issue SPR-16248
2018-01-07 23:29:16 +01:00
Juergen Hoeller 977550f956 Properly handle null bean instance in getLifecycleBeans
Issue: SPR-16343
2018-01-07 23:23:08 +01:00
Juergen Hoeller 18d90ec140 Properly handle null FactoryBean instance
Issue: SPR-16250
2018-01-07 23:22:56 +01:00
Juergen Hoeller 4577a19190 Upgrade to Commons Pool 2.5 (and Jackson Kotlin Module 2.9.3) 2017-12-21 13:52:00 +01:00
Philipp Grogg 591429e538 Fix exception message
initialDelayString is parsed into long, not integer.

Closes gh-1615
2017-12-09 15:46:28 -08:00
Sam Brannen 773cd3241b Polishing 2017-11-28 14:11:21 +01:00
sdeleuze 9f1d8517ba Polish Kotlin source code style 2017-11-21 15:59:23 +01:00
Juergen Hoeller 5843173567 Polishing 2017-11-21 13:42:57 +01:00
Juergen Hoeller 08c95fbcb3 Unit tests for configuration superclass inclusion
Issue: SPR-16217
2017-11-21 13:42:01 +01:00
Juergen Hoeller 40dacd3c1c Polishing 2017-11-20 22:27:07 +01:00
Juergen Hoeller 84699c8b9b Document common use cases for @Order vs @Priority vs @DependsOn
Issue: SPR-16213
2017-11-20 12:53:37 +01:00
Juergen Hoeller 85baba33bf Accessors for PeriodicTrigger properties
Issue: SPR-15982
2017-11-14 17:09:19 +01:00
sdeleuze edf8232555 Avoid implicit autowiring with Kotlin secondary ctors
Autowiring implicitely Kotlin primary constructors
when there are secondary constructors has side effects
on ConstructorResolver. It seems reasonable to
require explicit @Autowired annotation in such case.

With this commit, implicit autowiring of Kotlin
primary constructors is only performed when there
is a primary constructor defined alone or with
a default constructor (define explicitly or
generated via the kotlin-noarg compiler plugin
or via optional constructor parameters with default
values).

Issue: SPR-16022
2017-11-14 09:25:46 +01:00
Juergen Hoeller e2bb06edbd Unit tests for unresolvable generics with partial mismatch
Issue: SPR-16179
2017-11-13 21:51:02 +01:00
Juergen Hoeller 3091feee23 SpringValidatorAdapter skips value retrieval for Set field without index
Issue: SPR-16177
2017-11-13 21:50:55 +01:00
Juergen Hoeller ffd6eff369 Scheduled task introspection through ScheduledTaskHolder interface
Issue: SPR-15982
2017-11-06 18:36:39 +01:00
Juergen Hoeller 9511d29adb Updated bean count expectations in ClassPathBeanDefinitionScannerTests
Issue: SPR-16152
2017-11-06 18:36:29 +01:00
Stephane Nicoll 1838ddb95d Support Ant-style package name with component index
This commit improves the component index so that it supports ant-style
package name (i.e. com.example.**.foo).

Issue: SPR-16152
2017-11-06 15:19:30 +01:00
Juergen Hoeller 996d747aed Upgrade to Mockito 2.11
Includes fixes for invalid exception declarations in Mockito-based unit tests. Also includes FreeMarker 2.3.27, Commons Pool 2.4.3, JSON-P 1.1.2.

Issue: SPR-16157
2017-11-04 01:06:59 +01:00
Juergen Hoeller 1611ce7180 AbstractApplicationContext silently ignores non-initialized ApplicationEventMulticaster/LifecycleProcessor on destruction
Issue: SPR-16149
2017-11-02 16:07:12 +01:00
Juergen Hoeller e5c8dc0d65 MessageSource.getMessage returns null default message as-is (again)
Issue: SPR-16127
2017-10-31 11:06:42 +01:00
Haruki Okada 159da04eed Fix wrong javadoc example
Closes gh-1575
2017-10-23 09:20:19 +02:00
Juergen Hoeller c7100f771c Explicit notes on advice mode proxy vs aspectj
Issue: SPR-16092
2017-10-22 20:34:34 +02:00
Juergen Hoeller e17ad551f3 Latest dependency updates (RxJava 1.3.3, Hibernate ORM 5.2.12, Hibernate Validator 5.4.2 & 6.0.3) 2017-10-20 16:16:06 +02:00
Juergen Hoeller d1fac36e3e SchedulingConfigurer and JmsListenerConfigurer respect @Order
Issue: SPR-16090
2017-10-20 16:10:12 +02:00
Juergen Hoeller c3378fda33 AbstractMessageSource properly interacts with non-AbstractMessageSource parent
Issue: SPR-16047
2017-10-18 20:21:12 +02:00
Juergen Hoeller d1b5b5d2f7 Clarify destroy method suppression for DisposableBean vs (Auto)Closeable
Issue: SPR-16078

(cherry picked from commit dff2c84)
2017-10-16 23:53:02 +02:00
Juergen Hoeller 43b5e21947 Consistent alias declarations for value attribute on stereotypes
Issue: SPR-16066
2017-10-13 18:18:12 +02:00
Juergen Hoeller 625737f90a Controller/Repository/Service declare value attribute as alias for Component
Issue: SPR-16066
2017-10-13 14:24:12 +02:00
Juergen Hoeller ad4c8e7c0d Consistently sort BeanDefinitionRegistryPostProcessors
Issue: SPR-16043
2017-10-09 13:59:09 +02:00
Juergen Hoeller ec345bf162 Revised handling of missing data class arguments
Includes unified detection of Kotlin's optional parameters in MethodParameter.isOptional(), reduces BeanUtils.findPrimaryConstructor to Kotlin semantics (for reuse in AutowiredAnnotationBeanPostProcessor), and finally introduces a common KotlinDetector delegate with an isKotlinType(Class) check.

Issue: SPR-15877
Issue: SPR-16020
2017-09-28 00:31:12 +02:00
Juergen Hoeller efce7902c4 Polishing 2017-09-27 01:34:11 +02:00
Juergen Hoeller a4b2ae583e Expose AspectJ 1.8.11 in POMs (and use it for all tests)
Issue: SPR-15974
2017-09-27 01:34:02 +02:00
Sebastien Deleuze 23497a7ece Support autowiring by constructor in Kotlin bean DSL
Issue: SPR-16014
2017-09-27 01:25:22 +02:00
Sebastien Deleuze 14cba15296 Open router and bean Kotlin DSL to allow building custom ones 2017-09-26 16:31:16 +02:00
Juergen Hoeller ac45aa2022 Upgrade to AspectJ 1.9 beta 7 (with 1.8.10 exposed in POMs)
Issue: SPR-15974
2017-09-25 13:50:50 +02:00
Juergen Hoeller e2882fe1db Build against EE 8 API level wherever possible
Upgrade to JAXB 2.3, JAX-WS 2.3, Annotations 1.3.1, Interceptor 1.2.1.
Also includes Log4J 2.9.1 and Asciidoctor 1.5.6.
2017-09-24 17:18:21 +02:00
Juergen Hoeller 9190b76ab9 Latest dependency updates (POI 3.17, Rome 1.8, EhCache 3.4, Caffeine 2.5.6, RxJava 2.1.4, Tomcat 8.5.21, JRuby 9.1.13, Rhino 1.7.7.2) 2017-09-23 11:28:19 +02:00
Juergen Hoeller 7ae59d0c2a Nullability refinements on private and static methods
Based on IntelliJ IDEA 2017.3 introspection results.

Issue: SPR-15756
2017-09-22 18:22:14 +02:00
Xavier Downs dba1ef0b26 Fix Javadoc typo
Closes gh-1531
2017-09-20 09:30:37 +02:00
Sebastien Deleuze 1bc93e3d0f Revisit nullability annotations
This commit introduces the following changes.

1) It adds a new Spring @NonNull annotation which allows to apply
@NonNullApi semantic on a specific element, like @Nullable does.
Combined with @Nullable, it allows partial null-safety support when
package granularity is too broad.

2) @Nullable and @NonNull can apply to ElementType.TYPE_USE in order
to be used on generic type arguments (SPR-15942).

3) Annotations does not apply to ElementType.TYPE_PARAMETER anymore
since it is not supported yet (applicability for such use case is
controversial and need to be discussed).

4) @NonNullApi does not apply to ElementType.FIELD anymore since in a
lot of use cases (private, protected) it is not part for the public API
+ its usage should remain opt-in. A dedicated @NonNullFields annotation
has been added in order to set fields default to non-nullable.

5) Updated Javadoc and reference documentation.

Issue: SPR-15756
2017-09-15 13:26:41 +02:00
Juergen Hoeller 4371350b5d Polishing 2017-09-10 21:56:31 +02:00
Juergen Hoeller 30d67f7c42 Tests for @Lazy Validator setup
Issue: SPR-15807
2017-09-10 21:56:23 +02:00
Sebastien Deleuze 8b8a6766de Change BeanDefinitionDsl to implement ApplicationContextInitializer 2017-09-04 10:46:20 +02:00
Juergen Hoeller 26284cac4f Hibernate Validator 5 compatible support for element constraints
Issue: SPR-15916
Issue: SPR-15839
2017-09-01 16:40:24 +02:00
Juergen Hoeller 97ded1dcc7 Polishing 2017-09-01 14:05:35 +02:00
Juergen Hoeller 30bd5827b0 ConfigurationClassEnhancer leniently allows for null bean references
Issue: SPR-15829
2017-09-01 14:05:14 +02:00
Sebastien Deleuze d2c1b284f3 Polish Kotlin API contracts and documentation
Issue: SPR-15659
2017-08-29 00:56:39 +02:00
Brian Clozel 397fd24849 Revert "Leverage Kotlin plugin dependency management"
This reverts commit 3e2f6c848a.
2017-08-22 21:29:39 +02:00
Sebastien Deleuze 3e2f6c848a Leverage Kotlin plugin dependency management 2017-08-22 17:35:57 +02:00
Brian Clozel 2eeb428e95 Move modules to independent build files
The main `build.gradle` file contains now only the common build
infrastructure; all module-specific build configurations have
been moved to their own build file.

Issue: SPR-15885
2017-08-21 14:41:55 +02:00
Stephane Nicoll f6e7fef236 Polish 2017-08-19 10:50:41 +02:00
Juergen Hoeller b94302b5bd Enforce non-null value from getBean and at injection points
Bean-derived null values may still get passed into bean properties and injection points but only if those are declared as non-required. Note that getBean will never return null; a manual bean.equals(null) / "null".equals(bean.toString()) check identifies expected null values now.  This will only ever happen with custom FactoryBeans or factory methods returning null - and since all common cases are handled by autowiring or bean property values in bean definitions, there should be no need to ever manually check for such a null value received from getBean.

Issue: SPR-15829
2017-08-18 00:11:35 +02:00
Sebastien Deleuze 73cf07e9a4 Fix overridden methods nullability
Issue: SPR-15869
2017-08-17 15:02:59 +02:00
Juergen Hoeller ec1eafc46f @Lazy falls back to empty map/list/set for non-required collection dependency
Issue: SPR-15858
2017-08-17 12:28:55 +02:00
Juergen Hoeller adeb521ce4 Polishing 2017-08-08 17:27:28 +02:00
Juergen Hoeller de09f8ca1f Support for Bean Validation 2.0 container elements (with BV 2.0 test setup)
Includes latest dependency updates (Hibernate Validator 6.0.1, Caffeine 2.5.4, Netty 4.1.14, Tomcat 8.5.19, Johnzon 1.1.2, JsonPath 2.4, Jython 2.7.1)

Issue: SPR-15839
Issue: SPR-15808
2017-08-08 17:26:30 +02:00
Juergen Hoeller ca0983cd85 Polishing 2017-08-01 12:08:57 +02:00
Juergen Hoeller dd2bbcb3ec Leniently handle lambda-defined listeners with ErrorHandler as well
Issue: SPR-15838
2017-08-01 12:06:41 +02:00
Juergen Hoeller 1fbd047003 checkConfigurationClassCandidate explicitly skips factory method definitions
Issue: SPR-14603
2017-08-01 12:05:26 +02:00
Sebastien Deleuze 29c112c010 Avoid requiring `it` parameter in Kotlin bean DSL
By using function literals with receiver, we can avoid requiring
lambda parameters for a shorter and nicer syntax. Based on a
proposal from Joseph Taylor.

Issue: SPR-15815
2017-07-25 11:21:08 +02:00
Juergen Hoeller ac1d3b22c9 Polishing 2017-07-19 22:22:27 +02:00
Juergen Hoeller 46eba3dbfa Nullability fine-tuning around declaration inconsistencies
Issue: SPR-15720
Issue: SPR-15792
2017-07-19 22:22:20 +02:00
Juergen Hoeller 9fc4fb10b0 Nullability fine-tuning around bean properties
Issue: SPR-15720
Issue: SPR-15792
2017-07-19 11:43:58 +02:00
Sebastien Deleuze fb4ddb0746 Make getters and setters null-safety consistent
This commit ensure that null-safety is consistent between
getters and setters in order to be able to provide beans
with properties with a common type when type safety is
taken in account like with Kotlin.

It also add a few missing property level @Nullable
annotations.

Issue: SPR-15792
2017-07-19 09:07:56 +02:00
Sebastien Deleuze ff85726fa9 Fix warnings in Kotlin tests 2017-07-19 08:12:48 +02:00
Sebastien Deleuze e2fd04dff3 Add a [] Kotlin extension for PropertyResolver#getRequiredProperty 2017-07-19 08:12:32 +02:00
Sebastien Deleuze f72e0daa54 Add an env accessor to BeanDefinitionContext
Issue: SPR-15755
2017-07-19 07:57:19 +02:00
Juergen Hoeller c292a89b24 Http(Async)Client not actually nullable, plus MethodInterceptor nullability
Issue: SPR-15720
2017-07-19 00:15:37 +02:00
Juergen Hoeller bca5a36216 Explicit error message for bean name clash with containing configuration class
Issue: SPR-15775
2017-07-18 00:54:49 +02:00