Commit Graph

1421 Commits

Author SHA1 Message Date
Juergen Hoeller
6eb0a60df9 Polishing 2018-12-12 11:16:53 +01:00
Juergen Hoeller
aaaf81ed99 Polishing 2018-12-06 15:53:57 +01:00
Juergen Hoeller
50e5bdb813 Clarified VfsResource constructor
Issue: SPR-17563
2018-12-04 22:09:06 +01:00
Juergen Hoeller
6d7827e36b Polishing 2018-12-03 23:53:00 +01:00
Juergen Hoeller
d5dab12909 NettyDataBufferFactory.join returns single-element buffer as-is
Issue: SPR-17560
2018-12-03 23:52:35 +01:00
Sam Brannen
81fde5ec41 Ensure that MethodParameter.findParameterIndex() is thread-safe
Prior to this commit, parallel invocations of
MethodParameter.findParameterIndex() (invoked indirectly via
SynthesizingMethodParameter.forParameter() and
MethodParameter.forParameter()) could intermittently lead to an
IllegalArgumentException being thrown due to a race condition in the
internal implementation of the JDK's
java.lang.reflect.Executable.getParameters() method.

This commit addresses this issue by introducing a fallback for-loop
that iterates over the candidate parameters a second time using
equality checks instead of identity checks.

Issue: SPR-17534
2018-11-23 17:37:20 +01:00
Juergen Hoeller
262c702da4 CachingMetadataReaderFactory releases shared cache Map on clearCache()
LocalResourceCache properly initializes cacheLimit on construction.

Issue: SPR-17527
2018-11-22 11:20:47 +01:00
Juergen Hoeller
fef0e21d8b Remove unused LinkedList import 2018-11-20 22:16:51 +01:00
Juergen Hoeller
8c7579eba8 Polishing 2018-11-20 22:06:44 +01:00
stsypanov
02d3cfa42d Use ArrayList instead of LinkedList 2018-11-20 21:54:51 +01:00
Vojtech Janota
12f168290d SPR-17492: FastByteArrayOutputStream.read byte-to-int conversion 2018-11-20 17:08:01 +01:00
Rossen Stoyanchev
ba3fef3e8a Refactor media types parsing improvements
Issue: SPR-17459
2018-11-13 23:02:09 -05:00
Dimitrios Liapis
f4b05dc2e7 MediaType parsing supports comma inside quotes
Issue: SPR-17459
2018-11-13 16:59:57 -05:00
Arjen Poutsma
4182935b7a Revert optimization in StringDecoder
This commit reverts the first optimizations listed in
fa096dc60f, as the default delimiters
do vary, namely by the charset given in the message mime type.
The mimetype charset might not be compatible with ASCII (i.e. anything
but UTF-8 or ISO-8859-1, for instance it might be UTF-16), and will not
successfully find the default delimiters as a consequence.

Added test to indicate the bug.
2018-11-13 13:38:13 +01:00
Arjen Poutsma
e31914bada Polishing 2018-11-13 13:35:37 +01:00
Juergen Hoeller
40148c0560 Consistent use of ResolvableType.toClass() for assignability checks
Issue: SPR-17086
2018-11-12 20:29:37 +01:00
Juergen Hoeller
e26ae9853e Up-to-date version and link in ASM/CGLIB/Objenesis package javadoc
Issue: SPR-17267
Issue: SPR-17372
2018-11-08 16:56:48 +01:00
Juergen Hoeller
d9c1811d21 Deprecate NON_BRIDGED_METHODS constant as of 5.0.11 as well
Issue: SPR-17464
2018-11-05 22:59:18 +01:00
Juergen Hoeller
2ac4355ec0 ASM ClassReader leniently handles label offset mismatch (again)
Issue: SPR-17467
2018-11-05 17:44:23 +01:00
Juergen Hoeller
a3cd7af72d Polishing 2018-11-05 12:27:35 +01:00
Juergen Hoeller
0a7dcf14f9 Deprecate ReflectionUtils.invokeJdbcMethod (for removal in 5.2)
Issue: SPR-17464
2018-11-05 12:26:20 +01:00
Rossen Stoyanchev
133b8b0b5a Polish 2018-11-02 16:19:53 -04:00
Rossen Stoyanchev
fa096dc60f Minor refactoring in StringDecoder + polish
1. Avoid re-creating the List with delimited byte arrays on every
request if using the default delimiters which don't vary by charset.

2. Replace flatMap with flatMapIterable for splitOnDelimiter.

3. Avoid going through DataBufferUtils#join, and unnecessarily creating
Flux from the List, since the join method needs a list anyway.
2018-10-26 13:24:53 -04:00
Juergen Hoeller
ffa032e78f Polishing 2018-10-24 20:46:26 +02:00
Arjen Poutsma
488a1d4561 Review DataBufferUtils for cancellation memory leaks
Issue: SPR-17408
2018-10-24 16:28:21 +02:00
Arjen Poutsma
51bb96db47 Fix ResourceRegionEncoder and tests
Fix ResourceRegionEncoder so that it checks for resource existance
before writing boundaries. Also defer data buffer allocation until
necessary.

Issue: SPR-17419
2018-10-23 16:41:48 +02:00
Arjen Poutsma
eac9e66c46 Fix memory leak when canceling read from AsynchronousFileChannel
This commit fixes a memory leak that occurs when reading from a
AsynchronousFileChannel, and cancelling the subscription.

Issue: SPR-17419
2018-10-23 16:41:48 +02:00
Juergen Hoeller
c3c2383b0d Align serialVersionUID declaration with ASM master
Issue: SPR-17267
2018-10-22 18:53:23 +02:00
Arjen Poutsma
a64e85fcc6 Javadoc 2018-10-22 16:00:32 +02:00
Arjen Poutsma
f738273486 Fix buffering issue in StringDecoder
Issue: SPR-17418
2018-10-22 16:00:32 +02:00
Juergen Hoeller
dd2ce20687 SpringFactoriesLoader tolerates whitespace around class names
Issue: SPR-17413
2018-10-22 15:13:58 +02:00
Juergen Hoeller
83a54dba7e Avoid stacktrace if root resource is not resolvable in file system
Issue: SPR-17417
2018-10-22 15:13:49 +02:00
Arjen Poutsma
149d416e8e Review DataBufferUtils for error/cancellation memory leaks
Issue: SPR-17408
2018-10-19 12:16:18 +02:00
Juergen Hoeller
7ff938b3ef LogFormatUtils.formatValue leniently handles toString() exceptions
Issue: SPR-17397
2018-10-18 18:04:32 +02:00
Sebastien Deleuze
2c5a1af236 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:40:02 +02:00
Juergen Hoeller
a2ae5f6972 Force CGLIB to always specify ASM7 for its visitors
Issue: SPR-17371
2018-10-12 12:01:50 +02:00
Juergen Hoeller
053820c4ff Polishing 2018-10-09 23:14:49 +02:00
Juergen Hoeller
83909e6e1e Consistent exposure of empty attribute arrays in AnnotationMetadata
Issue: SPR-17347
2018-10-09 23:14:13 +02:00
Juergen Hoeller
fdf340306d Defensively use Class.forName instead of ClassLoader.loadClass
Issue: SPR-17333
2018-10-09 23:14:05 +02:00
Juergen Hoeller
cf3635b42d Resource.lastModified() propagates 0 value if target resource exists
Includes use of Files.getLastModifiedTime for NIO Paths, preservation of NIO-based resolution on createRelative, deprecation of PathResource, and consistent use of getContentLengthLong over getContentLength.

Issue: SPR-17320
2018-10-09 23:13:11 +02:00
Juergen Hoeller
1e0de072f9 Upgrade to ASM 7.0 beta release
Issue: SPR-17267
2018-10-09 23:13:02 +02:00
Rossen Stoyanchev
c01f350abe Move MonoToListenableFutureAdapter to spring-core
This was a package private class in spring-messaging since 5.0, and was
recently made public in 5.1. This commit promotes it to spring-core
where it belongs next to all other ListenableFuture support classes.

Follow-up refactoring for SPR-17336
2018-10-09 16:26:24 -04:00
Sam Hubbard
80e7819d6f Fix construction of NullSafeComparator in nullsLow
Previously, both nullsLow(Comparator<T>) and
nullsHigh(Comparator<T>) returned a
NullSafeComparator which treated nulls as being
high. This commit corrects this typo.
2018-10-05 13:20:28 +02:00
www
9d5aced8c5 Fix formatting
Prefix the opening brace with a single space in some classes.
Replace tab character with space in javadoc of AttributeAccessor.
Also fix some other trivial formatting errors.

Closes gh-1979
2018-10-05 09:20:47 +02:00
Rossen Stoyanchev
a6f9c4c599 LogFormatUtils is declared abstract 2018-09-19 11:54:05 -04:00
Arjen Poutsma
8a4835368d Use doOnDiscard to free internally queued data buffers
Issue: SPR-17246
2018-09-19 13:24:45 +02:00
Juergen Hoeller
c634b2fae7 ResolvableType-based resolution uses BeanNamesByType cache if possible
Issue: SPR-17282
2018-09-18 15:30:43 +02:00
Juergen Hoeller
69e8bcdf40 Checkstyle updates from ASM master
Issue: SPR-17267
2018-09-17 19:09:07 +02:00
Juergen Hoeller
8e83f140d4 Polishing 2018-09-15 00:17:17 +02:00
Rossen Stoyanchev
db8e9eafb2 Add LogFormatUtils
1. Helper method to eliminate duplication in formatting (de-)serialized
   values for logging introduced with prior commit #e62298.

2. Helper method for TRACE vs DEBUG logging with different details.

Issue: SPR-17254
2018-09-14 18:06:46 -04:00