Commit Graph

1766 Commits

Author SHA1 Message Date
Juergen Hoeller
d5e637a33c Restore independent LinkedMultiValueMap implementation (without base class)
Closes gh-25960

(cherry picked from commit 82835b99ec)
2020-10-26 11:31:48 +01:00
Juergen Hoeller
87b1b618fb Polishing 2020-10-12 19:25:47 +02:00
Juergen Hoeller
f4eefc62c1 Construct StringBuilder in StreamUtils with appropriate initial size
Closes gh-25789
2020-10-07 15:08:39 +02:00
Juergen Hoeller
7ec6a9dc54 Consistent @Nullable declarations on overridden converter methods 2020-10-06 17:49:57 +02:00
Juergen Hoeller
db48b546ac Polishing 2020-09-25 12:20:37 +02:00
Juergen Hoeller
560fec51a1 Consistent flushing of given OutputStream
(cherry picked from commit f5d7161d6b)
2020-09-18 19:25:02 +02:00
Juergen Hoeller
8fe530c449 Polishing (backported from 5.2.x) 2020-09-18 18:35:29 +02:00
Juergen Hoeller
5b4f3e871f Construct StringWriter instances with appropriate initial size
Closes gh-25789

(cherry picked from commit 9dfef59af2)
2020-09-18 18:33:00 +02:00
Sam Brannen
547a13985a Fix example in Javadoc for Assert.notNull(object, messageSupplier)
Closes gh-25774
2020-09-15 16:30:35 +02:00
Juergen Hoeller
ec87fdb028 Polishing 2020-09-14 23:13:24 +02:00
Juergen Hoeller
b7883c3e37 FileUrlResource.isWritable() exclusively relies on getFile() implementation
Closes gh-25584

(cherry picked from commit c6cc6705ef)
2020-09-08 12:38:49 +02:00
Juergen Hoeller
337d5874b1 Properties loading with ignoreResourceNotFound covers SocketException as well
Closes gh-25717

(cherry picked from commit 613b05d814)
2020-09-07 18:06:19 +02:00
Stephane Nicoll
81d5e66fe7 Make DataSize serializable
Closes gh-25676
2020-09-02 14:45:32 +02:00
Juergen Hoeller
2891dc6409 Polishing 2020-08-27 15:33:08 +02:00
Juergen Hoeller
bfd20da9de Polishing (backported from 5.2.x) 2020-08-07 14:51:08 +02:00
Juergen Hoeller
ce4001dd40 Refine use of substring operations
Closes gh-25445
2020-08-07 14:50:44 +02:00
Juergen Hoeller
d9f9f8b0de Avoid unnecessary computation of cleaned URL
Closes gh-25531

(cherry picked from commit 96a4e1150e)
2020-08-07 14:50:29 +02:00
Juergen Hoeller
a53d28edf1 Consistently use PropertySource.getName() for comparison
Includes synchronization for mutators on MutablePropertySources.

Closes gh-25369

(cherry picked from commit 01bab89dba)
2020-07-17 18:06:20 +02:00
Sam Brannen
14d539017c Make Profiles created via Profiles.of() comparable
Prior to this commit, a Profiles instance created via Profiles.of() was
not considered equivalent to another Profiles instance created via
Profiles.of() with the exact same expressions. This makes it difficult
to mock invocations of Environment#acceptsProfiles(Profiles) -- for
example, when using a mocking library such as Mockito.

This commit makes Profiles instances created via Profiles.of()
"comparable" by implementing equals() and hashCode() in ParsedProfiles.

Note, however, that equivalence is only guaranteed if the exact same
profile expression strings are supplied to Profiles.of(). In other
words, Profiles.of("A & B", "C | D") is equivalent to
Profiles.of("A & B", "C | D") and Profiles.of("C | D", "A & B"), but
Profiles.of("X & Y") is not equivalent to Profiles.of("X&Y") or
Profiles.of("Y & X").

Closes gh-25340
2020-07-07 14:41:08 +02:00
Juergen Hoeller
1b6afd52cb Document exception handling limitations in TaskDecorator implementations
Closes gh-25231
2020-06-10 22:57:21 +02:00
Juergen Hoeller
083dd0e19d Polishing 2020-05-29 16:31:11 +02:00
Juergen Hoeller
e6553939b2 Consistent MultiValueMap behavior for empty list values
This commit extracts MultiValueMapAdapter from CollectionUtils and reuses its implementation as base class of LinkedMultiValueMap.

Closes gh-25140
2020-05-29 16:30:51 +02:00
Juergen Hoeller
bb96bd4f48 Polishing 2020-05-26 23:55:56 +02:00
Sébastien Deleuze
f023df703a Remove potentially confusing kotlin-reflect related log message
Closes gh-24939
2020-04-20 10:39:57 +02:00
Juergen Hoeller
3689b3fdd5 Recursively copy directory with symbolic link
Closes gh-24823
2020-04-03 21:46:07 +02:00
Juergen Hoeller
818d18aa09 Expose context class for interface-based CGLIB proxies as well
Closes gh-24657
2020-03-26 17:31:31 +01:00
Juergen Hoeller
e51f660286 Polishing 2020-03-24 00:56:36 +01:00
Juergen Hoeller
51b8ba334a Polishing 2020-01-28 21:40:16 +01:00
Juergen Hoeller
1b50ca6bd3 Solve ReflectPermission issue in sandbox security policy model for CGLIB
Closes gh-24420
2020-01-28 21:19:15 +01:00
Rossen Stoyanchev
9969cb6d83 Improve limit handling in StringDecoder
The case of one data buffer containing multiple lines can could cause
a buffer leak due to a suspected issue in concatMapIterable. This
commit adds workarounds for that until the underlying issue is
addressed.

Closes gh-24346
2020-01-13 20:46:51 +00:00
Juergen Hoeller
7615e0b036 Un-deprecate PathResource (for NIO Path resolution in createRelative)
Includes aligned createRelative signature and dedicated java.io.File test.

Closes gh-24211
2019-12-16 17:05:28 +01:00
Juergen Hoeller
afe22b84c2 ConcurrentReferenceHashMap cache for getInterfaceMethodIfPossible results
Closes gh-24206
2019-12-16 16:55:10 +01:00
Juergen Hoeller
3fbe762832 Consistent use of annotation-api dependency instead of tomcat-embed-core 2019-12-12 17:12:27 +01:00
Juergen Hoeller
611bb0b92e Explicit test dependency on javax.annotation.Priority 2019-12-12 17:01:18 +01:00
Juergen Hoeller
a368040fd6 Polishing 2019-12-09 15:54:40 +01:00
Juergen Hoeller
197dbffe20 Support variable resolution of wildcard types
Includes cleanup of "varaible" typos in ResolvableTypeTests.

Closes gh-24150
2019-12-09 13:56:25 +01:00
Sam Brannen
f049a6ec16 Add integration test for gh-24110 2019-12-03 17:12:14 +01:00
Sam Brannen
7fdf775394 Test status quo for @Inherited annotations in AnnotationMetadata
See gh-24077
2019-11-28 18:19:44 +01:00
Sam Brannen
59084c6b73 Test status quo for AnnotatedTypeMetadata.getAnnotationAttributes()
See gh-24077
2019-11-28 13:46:35 +01:00
Juergen Hoeller
262332a7c9 Upgrade to Jetty 9.4.23 and Woodstox 5.3 2019-11-21 13:48:55 +01:00
Juergen Hoeller
268d029584 Avoid substring allocation in StringUtils.replace
Closes gh-24023
2019-11-19 15:04:15 +01:00
Juergen Hoeller
85471d0587 Revise getElementTypeDescriptor javadoc (no IllegalStateException)
Closes gh-23996
2019-11-14 18:34:19 +01:00
Juergen Hoeller
b4cf471021 Polishing 2019-10-30 16:45:35 +01:00
Rossen Stoyanchev
871464811c Limits on input stream in codecs
- Add maxInMemorySize property to Decoder and HttpMessageReader
  implementations that aggregate input to trigger
  DataBufferLimitException when reached.

- For codecs that call DataBufferUtils#join, there is now an overloaded
  variant with a maxInMemorySize extra argument. Internally, a custom
  LimitedDataBufferList is used to count and enforce the limit.

- Jackson2Tokenizer and XmlEventDecoder support those limits per
  streamed JSON object.

- Configurable limits for multipart requests with Synchronoss NIO.

- Centralized maxInMemorySize exposed via CodecConfigurer along with
  ability to plug in an instance of MultipartHttpMessageWrite.

Closes gh-23884
2019-10-29 12:36:36 +00:00
Juergen Hoeller
bb6f9bb6d4 Polishing 2019-09-25 12:14:48 +02:00
Stephane Nicoll
b65984a078 Consume getProtocolResolvers() rather than internal list
This commit makes sure that DefaultResourceLoader consistently use
getProtocolResolvers() to access additional protocol resolvers. This
allows subclasses to define how the list is provided.

Closes gh-23564
2019-09-16 14:35:00 +02:00
Phillip Webb
d945ae9191 Add blank line between java and javax imports
See gh-23539

Co-authored-by: Sam Brannen <sbrannen@pivotal.io>
2019-09-16 13:41:59 +02:00
Sam Brannen
d09f537699 Annotate Object#equals parameter with @nullable
See gh-23093

Co-authored-by: Sebastien Deleuze <sdeleuze@pivotal.io>
2019-09-16 12:43:13 +02:00
Juergen Hoeller
c8f20815ef Revise LinkedCaseInsensitiveMap's lazy key/value/entry collections
Closes gh-22926
2019-09-16 12:38:46 +02:00
Juergen Hoeller
60976e4116 Add missing nullable declarations
See gh-22821
2019-09-16 12:37:49 +02:00