Fix description for `prefetch`; remove reference to transactions since
the direct container does not support transactionSize.
Also fix `transactionSize` to just reference acks; autoConfiguration
doesn't support enabling transactions.
Closes gh-14569
Update the JAR `Hander` so that URL `startsWith` checks produce less
garbage. Comparisons are now performed first on the `path` rather than
the full `toString`. URL `toString` operations produce quite a lot of
garbage since a `StringBuilder` is always used.
In addition, we now also cache the JarFile URL toString to save repeated
calculation.
Closes gh-14561
Rewrite `ConfigurationPropertyName` in an attempt to consume less memory
and to reduce GC pressure from `toString()`.
Prior to this commit the `toString()` method would always construct a
new value from the name elements. This is sub-optimal since on on many
occasions the `ConfigurationPropertyName` is created from an already
well-formed String. The updated code now attempts to directly use the
original value for both `toString` and `equals` whenever possible.
Further refinements have also been made to the way that elements are
stored. Rather than a list or objects, we now use arrays that contains
the split points and types. This helps to reduce the amount of memory
required to store the name.
Closes gh-13414
Update `SpringConfigurationPropertySource` so that the
`DelegatingPropertyMapper` accepts a maximum of two values and does
not need to wrap arguments in an array. Also optimize the merge
operation to return a single result directly rather than always using
a new `List`.
Closes gh-14563
Generally speaking, methods on configuration classes will only be called once
and, therefore, it should be safe to hold a reference to a Stream for later
one-time usage. However, there are some scenarios in Spring Fu where functional
registration results in an attempt being made to use a Stream more than use.
This commit protects against multiple use by storing the ObjectProvider and
getting a new ordered Stream each time it's needed.
Closes gh-14467