Commit Graph

1487 Commits

Author SHA1 Message Date
Juergen Hoeller
d5f725d503 Polishing
(cherry picked from commit ffa032e78f)
2018-10-24 21:24:42 +02:00
Juergen Hoeller
110796375b SpringFactoriesLoader tolerates whitespace around class names
Issue: SPR-17413

(cherry picked from commit dd2ce20687)
2018-10-24 21:24:42 +02:00
Juergen Hoeller
b87ce596a0 Avoid stacktrace if root resource is not resolvable in file system
Issue: SPR-17417

(cherry picked from commit 83a54dba7e)
2018-10-24 21:24:42 +02:00
Sebastien Deleuze
73db2081cd Leverage Java reflection for Kotlin enums
As discussed in KT-25165, from a Kotlin POV enum constructors
have no parameter, this is an "implementation detail"
required for running on the JVM, so it seems relevant to skip
Kotlin reflection in that case and just delegate to Java
reflection.

Issue: SPR-16931
2018-10-16 16:42:31 +02:00
Juergen Hoeller
a45bce1369 Polishing 2018-10-10 00:15:58 +02:00
Juergen Hoeller
8d1499e168 Comparators.nullsLow creates right kind of NullSafeComparator
Issue: SPR-17357
2018-10-10 00:15:50 +02:00
Juergen Hoeller
ff0afcff06 Resource.lastModified() propagates 0 value if target resource exists
Includes consistent use of getContentLengthLong over getContentLength.

Issue: SPR-17320
2018-10-10 00:15:27 +02:00
Juergen Hoeller
53430760f3 Consistent exposure of empty attribute arrays in AnnotationMetadata
Issue: SPR-17347

(cherry picked from commit 83909e6e1e)
2018-10-10 00:15:04 +02:00
Juergen Hoeller
d90d65bad2 Polishing 2018-09-29 17:36:15 +02:00
Juergen Hoeller
702d533e6f Polishing 2018-09-14 23:59:45 +02:00
Juergen Hoeller
1535f985be Polishing 2018-09-14 14:30:03 +02:00
Arjen Poutsma
952315c333 DataBufferUtils does not release DataBuffer on error cases
This commit makes sure that in DataBufferUtils.write, any received data
buffers are returned as part of the returned flux, even when an error
occurs or is received.

Issue: SPR-16782

(cherry picked from commit 1a0522b805)
2018-09-12 14:58:37 +02:00
Arjen Poutsma
a00607348c Fixed DataBufferUtils.join leak for error in source
This commit fixes an issue where DataBufferUtils.join() would not
release databuffers that preceded an error signal.

Issue: SPR-17025

(cherry picked from commit 196c0adf47)
2018-09-12 14:45:45 +02:00
Juergen Hoeller
1d58fac54d UriComponentsBuilder copies query params through MultiValueMap.addAll
Issue: SPR-17256
2018-09-11 15:15:15 +02:00
Juergen Hoeller
7653762240 XMLEventReader.getElementText() properly checks for start element
Issue: SPR-17233

(cherry picked from commit 84ec382201)
2018-09-07 13:12:10 +02:00
Sebastien Deleuze
89fca1b949 Fix Kotlin inner class nested configuration handling
Before this commit, Kotlin inner class nested configuration
handling thrown an IndexOutOfBoundsException due to bogus filtering
of its constructor parameter reference to an instance of the outer
class.

This commit keep constructor parameter of type INSTANCE in order to
throw a more meaningful NoSuchBeanDefinitionException.

Issue: SPR-17222
2018-09-07 11:42:23 +02:00
Juergen Hoeller
68cf18f4a3 SimpleAliasRegistry.hasAlias properly resolves multiple chained aliases
Issue: SPR-17191

(cherry picked from commit 2ac23badee)
2018-08-17 09:58:55 +02:00
Juergen Hoeller
6b3dd0779f Consistently skip unnecessary search on superclasses and empty elements
Issue: SPR-16933
2018-08-15 17:56:03 +02:00
Juergen Hoeller
7894ecf445 Polishing 2018-08-13 14:29:36 +02:00
Juergen Hoeller
0e3f23eeb7 Polishing 2018-08-13 13:42:19 +02:00
Juergen Hoeller
1d8e5f4d85 Revert to Map entry iteration for less expensive static initialization
Issue: SPR-17169

(cherry picked from commit df51ff0386)
2018-08-12 21:02:26 +02:00
Juergen Hoeller
a159dd5993 AbstractAspectJAdvisorFactory uses AnnotationUtils.getValue 2018-08-09 02:07:00 +02:00
Juergen Hoeller
f3184a0878 Polishing 2018-08-09 00:49:54 +02:00
Juergen Hoeller
688ef9ad46 Find annotations on implemented generic superclass methods as well
Includes Java 8 getDeclaredAnnotation shortcut for lookup on Class.

Issue: SPR-17146

(cherry picked from commit 4521a79b2d)
2018-08-09 00:49:46 +02:00
Kazuhiro Sera
a80f4caf37 Fix typos detected by github.com/client9/misspell
(cherry picked from commit be211ceead)
2018-08-09 00:49:27 +02:00
Juergen Hoeller
a45ef35b38 Pruning of outdated JDK 6/7 references (plus related polishing)
(cherry picked from commit b325c74216)
2018-08-07 21:08:26 +02:00
Juergen Hoeller
4042c1d578 Polishing 2018-08-07 02:12:00 +02:00
Juergen Hoeller
34052945de Avoid unnecessary annotation introspection on framework methods
Issue: SPR-16933
2018-08-07 02:11:54 +02:00
Rossen Stoyanchev
6562e3047f takeUntilByteCount actually uses takeUntil
Issue: SPR-17188
2018-08-02 21:20:20 +03:00
Rossen Stoyanchev
0d0a0a2d08 Polish 2018-08-02 21:20:08 +03:00
Juergen Hoeller
55e8aea2a3 Polishing 2018-08-01 12:35:01 +02:00
Juergen Hoeller
77e75fdf87 Avoid synthesizable annotation creation for @Bean/@Scope on scanning
Includes consistent (non-)use of AnnotationUtils/AnnotatedElementUtils.

Issue: SPR-16933
2018-08-01 12:18:10 +02:00
Juergen Hoeller
fd75600c26 Polishing 2018-07-31 21:37:40 +02:00
Juergen Hoeller
a4be54d760 Avoid synthesizable check for common annotation types
This revision immediately returns false from isSynthesizable for java.lang.annotation types.

Issue: SPR-16933
2018-07-31 21:37:34 +02:00
Juergen Hoeller
91fa2ed0d4 Initialize pre-filled HashMaps with large enough capacity
Empty Maps are preferably initialized without capacity (not initializing them at all or lazily initializing with default capacity when needed).

Issue: SPR-17105

(cherry picked from commit 4a147d26fc)
2018-07-30 22:33:04 +02:00
Juergen Hoeller
c89fb745f7 ListBasedXMLEventReader uses defensive modifiable copy of given List
(cherry picked from commit 9ab63b8494)
2018-07-25 19:06:55 +02:00
Juergen Hoeller
e21db2619b AspectJExpressionPointcut leniently ignores non-composable interfaces
Issue: SPR-17003

(cherry picked from commit bccff73)
2018-07-22 22:35:32 +02:00
Juergen Hoeller
f5dd4d2c02 Polishing 2018-07-22 19:33:40 +02:00
Juergen Hoeller
c3f6403f61 Polishing 2018-07-20 16:45:17 +02:00
Juergen Hoeller
0c5c3103c6 ReflectiveMethodExecutor skips interface search (plus related polishing) 2018-07-19 16:51:13 +02:00
Juergen Hoeller
4d3a899a53 OrderUtils caches order values (for AnnotationAwareOrderComparator)
Issue: SPR-17064

(cherry picked from commit d0bbbf4)
2018-07-19 13:24:43 +02:00
Juergen Hoeller
b72594d799 Find annotations on implemented generic interface methods as well
Issue: SPR-16060

(cherry picked from commit 23d4862)
2018-07-18 19:56:00 +02:00
Juergen Hoeller
c0040a5508 Polishing 2018-07-18 14:03:54 +02:00
Juergen Hoeller
55563c16b5 StringUtils.parseLocaleString detects variant without country
The parseLocale method also turns an empty locale into null now, compatible with parseLocaleString behavior.

Includes tests for parsing all available locales on the JVM, checking toString/toLanguageTag equality between parsed and original locale.

Issue: SPR-7598
Issue: SPR-16651

(cherry picked from commit cab35aa)
2018-07-18 14:03:30 +02:00
Juergen Hoeller
9134588a82 Never return null from AnnotationMetadata.getMetaAnnotationTypes
Issue: SPR-17046

(cherry picked from commit cacd14c)
2018-07-18 13:59:11 +02:00
Juergen Hoeller
43868d2b72 Polishing 2018-07-06 01:39:34 +02:00
Juergen Hoeller
1ab9e2ceda Polishing 2018-07-04 15:46:52 +02:00
Juergen Hoeller
0480e75785 Polishing 2018-07-03 16:23:43 +02:00
Juergen Hoeller
ce0323fa8c ConcurrentReferenceHashMap caches EntrySet in volatile field
Includes an efficient implementation of isEmpty(), not relying on a full entry count but rather backing out once a non-empty hash segment has been found.

Issue: SPR-16994
2018-07-03 16:23:28 +02:00
Juergen Hoeller
8c07c6d099 Polishing 2018-07-01 02:35:35 +02:00